Changeset 27286 in vbox for trunk/src/VBox/Additions/WINNT
- Timestamp:
- Mar 11, 2010 4:01:26 PM (15 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Miniport
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/Helper.cpp
r27239 r27286 124 124 if (RT_FAILURE(rc)) 125 125 { 126 #ifndef DEBUG_misha127 126 dprintf(("VBoxVideo::vboxLikesVideoMode: ERROR allocating request, rc = %Rrc\n", rc)); 128 #else129 /* @todo: fixme: remove this ifdef*/130 #endif131 127 /* Most likely the VBoxGuest driver is not loaded. 132 128 * To get at least the video working, report the mode as supported. … … 151 147 VbglGRFree(&req->header); 152 148 } 153 #ifndef DEBUG_misha 149 154 150 dprintf(("VBoxVideo::vboxLikesVideoMode: width: %d, height: %d, bpp: %d -> %s\n", width, height, bpp, (bRC == 1) ? "OK" : "FALSE")); 155 #else156 /* @todo: fixme: remove this ifdef*/157 #endif158 151 159 152 return bRC; … … 164 157 ULONG retHeight = 0; 165 158 166 #ifndef DEBUG_misha167 159 dprintf(("VBoxVideo::vboxGetHeightReduction\n")); 168 #endif169 160 170 161 VMMDevGetHeightReductionRequest *req = NULL; … … 173 164 if (RT_FAILURE(rc)) 174 165 { 175 #ifndef DEBUG_misha176 166 dprintf(("VBoxVideo::vboxGetHeightReduction: ERROR allocating request, rc = %Rrc\n", rc)); 177 #endif178 167 } 179 168 else -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/VBoxVideo.cpp
r27240 r27286 1175 1175 xres, yres, bpp)); 1176 1176 } 1177 #if defined(LOG_ENABLED) && !defined(DEBUG_misha)1177 #if defined(LOG_ENABLED) 1178 1178 { 1179 1179 int i; -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/VBoxVideo.h
r27201 r27286 600 600 /* clear the visibility info fo the current primary */ 601 601 pOldPrimaryInfo->bVisible = FALSE; 602 pOldPrimaryInfo->bAssigned = FALSE; 602 603 Assert(pOldPrimaryInfo->VidPnSourceId == srcId); 603 pOldPrimaryInfo->VidPnSourceId = ~0;604 604 } 605 605 … … 608 608 PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE pPrimaryInfo = VBOXWDDM_ALLOCATION_BODY(pAllocation, VBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE); 609 609 pPrimaryInfo->bVisible = FALSE; 610 Assert(pPrimaryInfo->VidPnSourceId == srcId); 610 611 pPrimaryInfo->VidPnSourceId = srcId; 612 pPrimaryInfo->bAssigned = TRUE; 611 613 } 612 614 -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoShgsmi.cpp
r26969 r27286 182 182 int rc = VINF_SUCCESS; 183 183 184 PVBOXSHGSMIHEADER pCur = (PVBOXSHGSMIHEADER)HGSMI OffsetToPointer(&pHeap->area, offCmd);184 PVBOXSHGSMIHEADER pCur = (PVBOXSHGSMIHEADER)HGSMIBufferDataFromOffset (&pHeap->area, offCmd); 185 185 Assert(pCur); 186 186 if (pCur) -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoVdma.cpp
r26969 r27286 256 256 void vboxVdmaCBufDrSubmit (PDEVICE_EXTENSION pDevExt, PVBOXVDMAINFO pInfo, PVBOXVDMACBUF_DR pDr) 257 257 { 258 VBoxSHGSMICommandSubmitAsynchIrq (&pInfo->CmdHeap, pDr, vboxVdmaCBufDrCompletionIrq, pDevExt, 0);258 VBoxSHGSMICommandSubmitAsynchIrq (&pInfo->CmdHeap, pDr, vboxVdmaCBufDrCompletionIrq, pDevExt, VBOXSHGSMI_FLAG_GH_ASYNCH_FORCE); 259 259 } 260 260 -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.cpp
r27261 r27286 1229 1229 if (pCreateDevice->Flags.SystemDevice) 1230 1230 pDevice->enmType = VBOXWDDM_DEVICE_TYPE_SYSTEM; 1231 else1232 {1233 AssertBreakpoint(); /* we do not support custom contexts for now */1234 drprintf((__FUNCTION__ ": we do not support custom devices for now, hAdapter (0x%x)\n", hAdapter));1235 }1231 // else 1232 // { 1233 // AssertBreakpoint(); /* we do not support custom contexts for now */ 1234 // drprintf((__FUNCTION__ ": we do not support custom devices for now, hAdapter (0x%x)\n", hAdapter)); 1235 // } 1236 1236 1237 1237 pDevice->pAdapter = pContext; … … 1249 1249 PAGED_CODE(); 1250 1250 1251 switch (pAllocation->enmType) 1252 { 1253 case VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE: 1254 { 1255 PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE pAlloc = VBOXWDDM_ALLOCATION_BODY(pAllocation, VBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE); 1256 if (pAlloc->bAssigned) 1257 { 1258 /* @todo: do we need to notify host? */ 1259 vboxWddmAssignPrimary(pDevExt, &pDevExt->aSources[pAlloc->VidPnSourceId], NULL, pAlloc->VidPnSourceId); 1260 } 1261 break; 1262 } 1263 default: 1264 break; 1265 } 1251 1266 vboxWddmMemFree(pAllocation); 1252 1267 return STATUS_SUCCESS; … … 1388 1403 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1389 1404 1390 vboxVDbgBreakF ();1405 vboxVDbgBreakFv(); 1391 1406 1392 1407 NTSTATUS Status = STATUS_SUCCESS; … … 1478 1493 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1479 1494 1480 vboxVDbgBreakF ();1495 vboxVDbgBreakFv(); 1481 1496 1482 1497 NTSTATUS Status = STATUS_SUCCESS; … … 1667 1682 VBOXVDMACMDBUF_INFO BufInfo = {0}; 1668 1683 1669 Assert( pSubmitCommand->DmaBufferSegmentId);1684 Assert(!pSubmitCommand->DmaBufferSegmentId); 1670 1685 1671 1686 /* the DMA command buffer is located in system RAM, the host will need to pick it from there */ … … 1735 1750 case DXGK_OPERATION_TRANSFER: 1736 1751 { 1737 PVBOXWDDM_ALLOCATION pAllocation = (PVBOXWDDM_ALLOCATION)pBuildPagingBuffer->Transfer.hAllocation;1752 pBuildPagingBuffer->pDmaBuffer = (uint8_t*)pBuildPagingBuffer->pDmaBuffer + VBOXVDMACMD_SIZE(VBOXVDMACMD_DMA_BPB_TRANSFER); 1738 1753 break; 1739 1754 } 1740 1755 case DXGK_OPERATION_FILL: 1756 { 1757 pBuildPagingBuffer->pDmaBuffer = (uint8_t*)pBuildPagingBuffer->pDmaBuffer + VBOXVDMACMD_SIZE(VBOXVDMACMD_DMA_BPB_FILL); 1741 1758 break; 1759 } 1742 1760 case DXGK_OPERATION_DISCARD_CONTENT: 1761 { 1762 AssertBreakpoint(); 1743 1763 break; 1764 } 1744 1765 default: 1766 { 1745 1767 drprintf((__FUNCTION__": unsupported op (%d)\n", pBuildPagingBuffer->Operation)); 1746 1768 AssertBreakpoint(); 1747 1769 break; 1770 } 1748 1771 } 1749 1772 … … 1995 2018 D3DKMDT_2DREGION *pResolutions; 1996 2019 VBoxWddmGetModesTable(pDevExt, /* PDEVICE_EXTENSION DeviceExtension */ 1997 true, /* bool bRebuildTable*/2020 false, /* bool bRebuildTable*/ 1998 2021 &pModes, /* VIDEO_MODE_INFORMATION ** ppModes*/ 1999 2022 &cModes, /* uint32_t * pcModes */ … … 2060 2083 CbContext.pEnumCofuncModalityArg = pEnumCofuncModalityArg; 2061 2084 VBoxWddmGetModesTable(pContext, /* PDEVICE_EXTENSION DeviceExtension */ 2062 true, /* bool bRebuildTable*/2085 false, /* bool bRebuildTable*/ 2063 2086 &CbContext.pModes, /* VIDEO_MODE_INFORMATION ** ppModes*/ 2064 2087 &CbContext.cModes, /* uint32_t * pcModes */ … … 2315 2338 D3DKMDT_2DREGION *pResolutions; 2316 2339 VBoxWddmGetModesTable(pDevExt, /* PDEVICE_EXTENSION DeviceExtension */ 2317 true, /* bool bRebuildTable*/2340 false, /* bool bRebuildTable*/ 2318 2341 &pModes, /* VIDEO_MODE_INFORMATION ** ppModes*/ 2319 2342 &cModes, /* uint32_t * pcModes */ … … 2472 2495 dfprintf(("==> "__FUNCTION__ ", hDevice(0x%x)\n", hDevice)); 2473 2496 2474 vboxVDbgBreakF ();2497 vboxVDbgBreakFv(); 2475 2498 2476 2499 NTSTATUS Status = STATUS_SUCCESS; … … 2644 2667 if (vboxWddmPixFormatConversionSupported(pSrcAlloc->u.SurfInfo.format, pDstAlloc->u.SurfInfo.format)) 2645 2668 { 2646 memset(pPresent->pPatchLocationListOut, 0, 2*sizeof (D3DDDI_PATCHLOCATIONLIST));2669 memset(pPresent->pPatchLocationListOut, 0, 3*sizeof (D3DDDI_PATCHLOCATIONLIST)); 2647 2670 // pPresent->pPatchLocationListOut->PatchOffset = 0; 2648 //++pPresent->pPatchLocationListOut;2671 ++pPresent->pPatchLocationListOut; 2649 2672 pPresent->pPatchLocationListOut->PatchOffset = VBOXVDMACMD_BODY_FIELD_OFFSET(UINT, VBOXVDMACMD_DMA_PRESENT_BLT, offSrc); 2650 pPresent->pPatchLocationListOut->AllocationIndex = 0;2673 pPresent->pPatchLocationListOut->AllocationIndex = DXGK_PRESENT_SOURCE_INDEX; 2651 2674 ++pPresent->pPatchLocationListOut; 2652 2675 pPresent->pPatchLocationListOut->PatchOffset = VBOXVDMACMD_BODY_FIELD_OFFSET(UINT, VBOXVDMACMD_DMA_PRESENT_BLT, offDst); 2653 pPresent->pPatchLocationListOut->AllocationIndex = 1;2676 pPresent->pPatchLocationListOut->AllocationIndex = DXGK_PRESENT_DESTINATION_INDEX; 2654 2677 ++pPresent->pPatchLocationListOut; 2655 2678 … … 2783 2806 if (pCreateContext->Flags.SystemContext) 2784 2807 pContext->enmType = VBOXWDDM_CONTEXT_TYPE_SYSTEM; 2785 else2786 {2787 AssertBreakpoint(); /* we do not support custom contexts for now */2788 drprintf((__FUNCTION__ ", we do not support custom contexts for now, hDevice (0x%x)\n", hDevice));2789 }2808 // else 2809 // { 2810 // AssertBreakpoint(); /* we do not support custom contexts for now */ 2811 // drprintf((__FUNCTION__ ", we do not support custom contexts for now, hDevice (0x%x)\n", hDevice)); 2812 // } 2790 2813 2791 2814 pCreateContext->hContext = pContext; -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.h
r27219 r27286 91 91 // VBOXVIDEOOFFSET offAddress; 92 92 BOOLEAN bVisible; 93 BOOLEAN bAssigned; 93 94 } VBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE, *PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE; 94 95
Note:
See TracChangeset
for help on using the changeset viewer.