Changeset 30973 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Timestamp:
- Jul 21, 2010 5:32:17 PM (14 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoVdma.cpp
r30970 r30973 525 525 { 526 526 uint32_t * pvU32Mem = (uint32_t*)(pvMem + (ir * pAlloc->SurfDesc.pitch) + (pRect->left * bytestPP)); 527 uint32_t cRaw = (pRect->right - pRect->left) * bytestPP;527 uint32_t cRaw = pRect->right - pRect->left; 528 528 Assert(pRect->left >= 0); 529 529 Assert(pRect->right <= (LONG)pAlloc->SurfDesc.width); -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoVhwa.cpp
r30317 r30973 84 84 #endif 85 85 86 void vboxVhwaCommandCheckCompletion(PDEVICE_EXTENSION pDevExt) 87 { 88 NTSTATUS Status = vboxWddmCallIsr(pDevExt); 89 Assert(Status == STATUS_SUCCESS); 90 } 91 86 92 VBOXVHWACMD* vboxVhwaCommandCreate(PDEVICE_EXTENSION pDevExt, D3DDDI_VIDEO_PRESENT_SOURCE_ID srcId, VBOXVHWACMD_TYPE enmCmd, VBOXVHWACMD_LENGTH cbCmd) 87 93 { 94 vboxVhwaCommandCheckCompletion(pDevExt); 88 95 #ifdef VBOXVHWA_WITH_SHGSMI 89 96 VBOXVHWACMD* pHdr = (VBOXVHWACMD*)VBoxSHGSMICommandAlloc(&pDevExt->u.primary.hgsmiAdapterHeap, … … 307 314 int vboxVhwaDisable(PDEVICE_EXTENSION pDevExt, D3DDDI_VIDEO_PRESENT_SOURCE_ID srcId) 308 315 { 316 vboxVhwaCommandCheckCompletion(pDevExt); 317 309 318 int rc = VERR_GENERAL_FAILURE; 310 319 VBOXVHWACMD* pCmd; -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.cpp
r30970 r30973 890 890 { 891 891 vboxSHGSMIListCat(&pDevExt->VhwaCmdList, &VhwaCmdList); 892 bNeedDpc = TRUE; 892 893 } 893 894 … … 910 911 Assert(flags == 0); 911 912 #endif 913 } 914 915 if (bNeedDpc) 916 { 912 917 BOOLEAN bDpcQueued = pDevExt->u.primary.DxgkInterface.DxgkCbQueueDpc(pDevExt->u.primary.DxgkInterface.DeviceHandle); 913 918 Assert(bDpcQueued); … … 1980 1985 } 1981 1986 1982 #ifdef VBOXWDDM_RENDER_FROM_SHADOW1983 1987 typedef struct VBOXWDDM_SHADOW_UPDATE_COMPLETION 1984 1988 { … … 2025 2029 return Status; 2026 2030 } 2027 #endif 2031 2032 typedef struct VBOXWDDM_CALL_ISR 2033 { 2034 PDEVICE_EXTENSION pDevExt; 2035 ULONG MessageNumber; 2036 } VBOXWDDM_CALL_ISR, *PVBOXWDDM_CALL_ISR; 2037 2038 static BOOLEAN vboxWddmCallIsrCb(PVOID Context) 2039 { 2040 PVBOXWDDM_CALL_ISR pdc = (PVBOXWDDM_CALL_ISR)Context; 2041 return DxgkDdiInterruptRoutine(pdc->pDevExt, pdc->MessageNumber); 2042 } 2043 2044 NTSTATUS vboxWddmCallIsr(PDEVICE_EXTENSION pDevExt) 2045 { 2046 VBOXWDDM_CALL_ISR context; 2047 context.pDevExt = pDevExt; 2048 context.MessageNumber = 0; 2049 BOOLEAN bRet; 2050 NTSTATUS Status = pDevExt->u.primary.DxgkInterface.DxgkCbSynchronizeExecution( 2051 pDevExt->u.primary.DxgkInterface.DeviceHandle, 2052 vboxWddmCallIsrCb, 2053 &context, 2054 0, /* IN ULONG MessageNumber */ 2055 &bRet); 2056 Assert(Status == STATUS_SUCCESS); 2057 return Status; 2058 } 2028 2059 2029 2060 static void vboxWddmSubmitBltCmd(PDEVICE_EXTENSION pDevExt, PVBOXWDDM_CONTEXT pContext, PVBOXWDDM_DMA_PRESENT_BLT pBlt) -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.h
r30942 r30973 50 50 51 51 NTSTATUS vboxWddmDmaCmdNotifyCompletion(PDEVICE_EXTENSION pDevExt, struct VBOXWDDM_CONTEXT *pContext, UINT SubmissionFenceId); 52 NTSTATUS vboxWddmCallIsr(PDEVICE_EXTENSION pDevExt); 52 53 53 54 /* allocation */
Note:
See TracChangeset
for help on using the changeset viewer.