VirtualBox

Changeset 26969 in vbox for trunk/src/VBox/Devices/Graphics


Ignore:
Timestamp:
Mar 2, 2010 8:28:01 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
58266
Message:

wddm: bugfixes + stubs for DMA support in VGA device

Location:
trunk/src/VBox/Devices/Graphics
Files:
3 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Graphics/DevVGA.cpp

    r26856 r26969  
    4949*   Defined Constants And Macros                                               *
    5050*******************************************************************************/
     51#ifndef VBOX
    5152/** The default amount of VRAM. */
    5253#define VGA_VRAM_DEFAULT    (_4M)
     
    5556/** The minimum amount of VRAM. */
    5657#define VGA_VRAM_MIN        (_1M)
     58#else
     59/* moved to DevVGA.h */
     60#endif
    5761
    5862/** The size of the VGA GC mapping.
  • trunk/src/VBox/Devices/Graphics/DevVGA.h

    r25985 r26969  
    4444 * THE SOFTWARE.
    4545 */
     46#ifdef VBOX
     47/** The default amount of VRAM. */
     48# define VGA_VRAM_DEFAULT    (_4M)
     49/** The maximum amount of VRAM. */
     50# define VGA_VRAM_MAX        (128 * _1M)
     51/** The minimum amount of VRAM. */
     52# define VGA_VRAM_MIN        (_1M)
     53#endif
    4654
    4755#ifdef VBOX_WITH_HGSMI
     
    252260#endif /* VBOX */
    253261
     262#ifdef VBOXVDMA
     263typedef struct VBOXVDMAHOST *PVBOXVDMAHOST;
     264#endif
     265
    254266typedef struct VGAState {
    255267    VGA_STATE_COMMON
     
    282294    R3PTRTYPE(PHGSMIINSTANCE)   pHGSMI;
    283295#endif /* VBOX_WITH_HGSMI */
     296#ifdef VBOXVDMA
     297    R3PTRTYPE(PVBOXVDMAHOST)    pVdma;
     298#endif
    284299
    285300    /** Current refresh timer interval. */
     
    476491int vboxVBVALoadStateDone (PPDMDEVINS pDevIns, PSSMHANDLE pSSM);
    477492
     493# ifdef VBOXVDMA
     494int vboxVDMAConstruct(PVGASTATE pVGAState, struct VBOXVDMAHOST *pVdma);
     495int vboxVDMADestruct(PVGASTATE pVGAState, struct VBOXVDMAHOST *pVdma);
     496void vboxVDMAControl(PVGASTATE pVGAState, struct VBOXVDMAHOST *pVdma, PVBOXVDMA_CTL pCmd);
     497void vboxVDMACommand(PVGASTATE pVGAState, struct VBOXVDMAHOST *pVdma, PVBOXVDMACBUF_DR pCmd);
     498# endif /* VBOXVDMA */
     499
    478500#endif /* VBOX_WITH_HGSMI */
    479501
  • trunk/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp

    r26856 r26969  
    3434#include <iprt/semaphore.h>
    3535#endif
    36 
    37 /** The default amount of VRAM. */
    38 #define VGA_VRAM_DEFAULT    (_4M)
    39 /** The maximum amount of VRAM. */
    40 #define VGA_VRAM_MAX        (128 * _1M)
    41 /** The minimum amount of VRAM. */
    42 #define VGA_VRAM_MIN        (_1M)
    4336
    4437#include "DevVGA.h"
     
    13041297#ifdef VBOXVDMA
    13051298        case VBVA_VDMA_CMD:
    1306         case VBVA_VDMA_CTL:
     1299        {
     1300            PVBOXVDMACBUF_DR pCmd = (PVBOXVDMACBUF_DR)VBoxSHGSMIBufferData ((PVBOXSHGSMIHEADER)pvBuffer);
     1301            vboxVDMACommand(pVGAState, pVGAState->pVdma, pCmd);
    13071302            rc = VINF_SUCCESS;
    13081303            break;
     1304        }
     1305        case VBVA_VDMA_CTL:
     1306        {
     1307            PVBOXVDMA_CTL pCmd = (PVBOXVDMA_CTL)VBoxSHGSMIBufferData ((PVBOXSHGSMIHEADER)pvBuffer);
     1308            vboxVDMAControl(pVGAState, pVGAState->pVdma, pCmd);
     1309            rc = VINF_SUCCESS;
     1310            break;
     1311        }
    13091312#endif
    13101313        case VBVA_QUERY_CONF32:
  • trunk/src/VBox/Devices/Graphics/HGSMI/HGSMIHost.cpp

    r26556 r26969  
    16771677
    16781678    int rc = hgsmiGuestCompletionFIFOAlloc (pIns, &pEntry);
    1679 
     1679    AssertRC(rc);
    16801680    if (RT_SUCCESS (rc))
    16811681    {
     
    16831683
    16841684        rc = hgsmiFIFOLock(pIns);
     1685        AssertRC(rc);
    16851686        if (RT_SUCCESS (rc))
    16861687        {
  • trunk/src/VBox/Devices/Graphics/HGSMI/HGSMIHost.h

    r25062 r26969  
    136136int HGSMIHostSaveStateExec (PHGSMIINSTANCE pIns, PSSMHANDLE pSSM);
    137137
    138 #if 0
    139 /* Submit this buffer to the guest asynchronously. */
    140 int HGSMIHostBufferProcessAsync (PHGSMIINSTANCE pIns,
    141                                  void *pvMem,
    142                                  PFNHGSMIBUFFERPROCESSED);
     138#ifdef VBOXVDMA
     139int HGSMICompleteGuestCommand(PHGSMIINSTANCE pIns, void *pvMem, bool bDoIrq);
    143140#endif
    144141
  • trunk/src/VBox/Devices/Graphics/HGSMI/HGSMIHostHlp.h

    r26876 r26969  
    5050}
    5151
     52DECLINLINE(bool) hgsmiListIsEmpty (HGSMILIST *pList)
     53{
     54    return !pList->pHead;
     55}
     56
    5257DECLINLINE(void) hgsmiListInit (HGSMILIST *pList)
    5358{
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette