VirtualBox

Ignore:
Timestamp:
Jun 24, 2010 7:57:40 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
63087
Message:

wddm/3d: more visible rects support & fixes, enhances to dma command handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoVdma.h

    r29670 r30441  
    2828#endif
    2929
     30/* start */
     31typedef enum
     32{
     33    VBOXVDMAPIPE_STATE_CLOSED    = 0,
     34    VBOXVDMAPIPE_STATE_CREATED   = 1,
     35    VBOXVDMAPIPE_STATE_OPENNED   = 2,
     36    VBOXVDMAPIPE_STATE_CLOSING   = 3
     37} VBOXVDMAPIPE_STATE;
     38
     39typedef struct VBOXVDMAPIPE
     40{
     41    KSPIN_LOCK SinchLock;
     42    KEVENT Event;
     43    LIST_ENTRY CmdListHead;
     44    VBOXVDMAPIPE_STATE enmState;
     45    /* true iff the other end needs Event notification */
     46    bool bNeedNotify;
     47} VBOXVDMAPIPE, *PVBOXVDMAPIPE;
     48
     49typedef struct VBOXVDMAPIPE_CMD_HDR
     50{
     51    LIST_ENTRY ListEntry;
     52} VBOXVDMAPIPE_CMD_HDR, *PVBOXVDMAPIPE_CMD_HDR;
     53
     54#define VBOXVDMAPIPE_CMD_HDR_FROM_ENTRY(_pE)  ( (PVBOXVDMAPIPE_CMD_HDR)((uint8_t *)(_pE) - RT_OFFSETOF(VBOXVDMAPIPE_CMD_HDR, ListEntry)) )
     55
     56typedef enum
     57{
     58    VBOXVDMAPIPE_CMD_TYPE_UNDEFINED = 0,
     59    VBOXVDMAPIPE_CMD_TYPE_RECTSINFO = 1,
     60    VBOXVDMAPIPE_CMD_TYPE_DMACMD    = 2
     61} VBOXVDMAPIPE_CMD_TYPE;
     62
     63typedef struct VBOXVDMAPIPE_CMD_DR
     64{
     65    VBOXVDMAPIPE_CMD_HDR PipeHdr;
     66    VBOXVDMAPIPE_CMD_TYPE enmType;
     67} VBOXVDMAPIPE_CMD_DR, *PVBOXVDMAPIPE_CMD_DR;
     68
     69#define VBOXVDMAPIPE_CMD_DR_FROM_ENTRY(_pE)  ( (PVBOXVDMAPIPE_CMD_DR)VBOXVDMAPIPE_CMD_HDR_FROM_ENTRY(_pE) )
     70
     71typedef struct VBOXVDMAPIPE_CMD_RECTSINFO
     72{
     73    VBOXVDMAPIPE_CMD_DR Hdr;
     74    PVBOXWDDM_CONTEXT pContext;
     75    RECT ContextRect;
     76    VBOXWDDM_RECTS_INFO UpdateRects;
     77} VBOXVDMAPIPE_CMD_RECTSINFO, *PVBOXVDMAPIPE_CMD_RECTSINFO;
     78
     79typedef struct VBOXVDMAGG
     80{
     81    VBOXVDMAPIPE CmdPipe;
     82    PKTHREAD pThread;
     83} VBOXVDMAGG, *PVBOXVDMAGG;
     84
    3085/* DMA commands are currently submitted over HGSMI */
    3186typedef struct VBOXVDMAINFO
     
    3792    VBOXVDMASUBMIT Submitter;
    3893#endif
     94    /* dma-related commands list processed on the guest w/o host part involvement (guest-guest commands) */
     95    VBOXVDMAGG DmaGg;
    3996} VBOXVDMAINFO, *PVBOXVDMAINFO;
    4097
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