Changeset 26667 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Timestamp:
- Feb 19, 2010 5:49:14 PM (15 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.cpp
r26661 r26667 1187 1187 switch (pAllocInfo->enmType) 1188 1188 { 1189 case VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE:1189 case VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE: 1190 1190 { 1191 1191 Assert(pAllocationInfo->PrivateDriverDataSize >= VBOXWDDM_ALLOCINFO_SIZE(VBOXWDDM_ALLOCINFO_SHAREDPRIMARYSURFACE)); … … 1198 1198 if (pAllocation) 1199 1199 { 1200 pAllocation->enmType = VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE;1200 pAllocation->enmType = VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE; 1201 1201 pAllocation->u.SurfInfo = pAllocInfo->u.SurfInfo; 1202 1202 PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE pAlloc = VBOXWDDM_ALLOCATION_BODY(pAllocInfo, VBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE); … … 1238 1238 else 1239 1239 { 1240 drprintf((__FUNCTION__ ": ERROR: PrivateDriverDataSize(%d) less than VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE cmd size(%d)\n", pAllocationInfo->PrivateDriverDataSize, VBOXWDDM_ALLOCINFO_SIZE(VBOXWDDM_ALLOCINFO_SHAREDPRIMARYSURFACE)));1240 drprintf((__FUNCTION__ ": ERROR: PrivateDriverDataSize(%d) less than VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE cmd size(%d)\n", pAllocationInfo->PrivateDriverDataSize, VBOXWDDM_ALLOCINFO_SIZE(VBOXWDDM_ALLOCINFO_SHAREDPRIMARYSURFACE))); 1241 1241 Status = STATUS_INVALID_PARAMETER; 1242 1242 } 1243 1243 break; 1244 1244 } 1245 case VBOXWDDM_ALLOC_ STD_SHADOWSURFACE:1246 case VBOXWDDM_ALLOC_ STD_STAGINGSURFACE:1245 case VBOXWDDM_ALLOC_TYPE_STD_SHADOWSURFACE: 1246 case VBOXWDDM_ALLOC_TYPE_STD_STAGINGSURFACE: 1247 1247 { 1248 1248 Assert(pAllocationInfo->PrivateDriverDataSize >= VBOXWDDM_ALLOCINFO_HEADSIZE()); … … 1281 1281 else 1282 1282 { 1283 drprintf((__FUNCTION__ ": ERROR: PrivateDriverDataSize(%d) less than VBOXWDDM_ALLOC_STD_SHADOWSURFACEcmd size(%d)\n", pAllocationInfo->PrivateDriverDataSize, VBOXWDDM_ALLOCINFO_HEADSIZE()));1283 drprintf((__FUNCTION__ ": ERROR: PrivateDriverDataSize(%d) less than cmd size(%d)\n", pAllocationInfo->PrivateDriverDataSize, VBOXWDDM_ALLOCINFO_HEADSIZE())); 1284 1284 Status = STATUS_INVALID_PARAMETER; 1285 1285 } … … 1389 1389 { 1390 1390 pAllocInfo = (PVBOXWDDM_ALLOCINFO)pGetStandardAllocationDriverData->pAllocationPrivateDriverData; 1391 pAllocInfo->enmType = VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE;1391 pAllocInfo->enmType = VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE; 1392 1392 pAllocInfo->u.SurfInfo.width = pGetStandardAllocationDriverData->pCreateSharedPrimarySurfaceData->Width; 1393 1393 pAllocInfo->u.SurfInfo.height = pGetStandardAllocationDriverData->pCreateSharedPrimarySurfaceData->Height; … … 1419 1419 { 1420 1420 pAllocInfo = (PVBOXWDDM_ALLOCINFO)pGetStandardAllocationDriverData->pAllocationPrivateDriverData; 1421 pAllocInfo->enmType = VBOXWDDM_ALLOC_ STD_SHADOWSURFACE;1421 pAllocInfo->enmType = VBOXWDDM_ALLOC_TYPE_STD_SHADOWSURFACE; 1422 1422 pAllocInfo->u.SurfInfo.width = pGetStandardAllocationDriverData->pCreateShadowSurfaceData->Width; 1423 1423 pAllocInfo->u.SurfInfo.height = pGetStandardAllocationDriverData->pCreateShadowSurfaceData->Height; … … 1445 1445 { 1446 1446 pAllocInfo = (PVBOXWDDM_ALLOCINFO)pGetStandardAllocationDriverData->pAllocationPrivateDriverData; 1447 pAllocInfo->enmType = VBOXWDDM_ALLOC_ STD_STAGINGSURFACE;1447 pAllocInfo->enmType = VBOXWDDM_ALLOC_TYPE_STD_STAGINGSURFACE; 1448 1448 pAllocInfo->u.SurfInfo.width = pGetStandardAllocationDriverData->pCreateStagingSurfaceData->Width; 1449 1449 pAllocInfo->u.SurfInfo.height = pGetStandardAllocationDriverData->pCreateStagingSurfaceData->Height; … … 1599 1599 1600 1600 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1601 1602 /* @todo: */ 1603 switch (pBuildPagingBuffer->Operation) 1604 { 1605 case DXGK_OPERATION_TRANSFER: 1606 { 1607 PVBOXWDDM_ALLOCATION pAllocation = (PVBOXWDDM_ALLOCATION)pBuildPagingBuffer->Transfer.hAllocation; 1608 break; 1609 } 1610 case DXGK_OPERATION_FILL: 1611 break; 1612 case DXGK_OPERATION_DISCARD_CONTENT: 1613 break; 1614 default: 1615 drprintf((__FUNCTION__": unsupported op (%d)\n", pBuildPagingBuffer->Operation)); 1616 AssertBreakpoint(); 1617 break; 1618 } 1601 1619 1602 1620 dfprintf(("<== "__FUNCTION__ ", context(0x%x)\n", hAdapter)); … … 2033 2051 ) 2034 2052 { 2035 return STATUS_NOT_IMPLEMENTED; 2053 /* The DxgkDdiSetVidPnSourceAddress function should be made pageable. */ 2054 PAGED_CODE(); 2055 2056 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 2057 2058 NTSTATUS Status = STATUS_SUCCESS; 2059 PDEVICE_EXTENSION pDevExt = (PDEVICE_EXTENSION)hAdapter; 2060 Assert(pDevExt->cSources > pSetVidPnSourceAddress->VidPnSourceId); 2061 if (pDevExt->cSources > pSetVidPnSourceAddress->VidPnSourceId) 2062 { 2063 PVBOXWDDM_SOURCE pSource = &pDevExt->aSources[pSetVidPnSourceAddress->VidPnSourceId]; 2064 PVBOXWDDM_ALLOCATION pAllocation; 2065 Assert(pSetVidPnSourceAddress->hAllocation); 2066 Assert(pSetVidPnSourceAddress->hAllocation || pSource->pAllocation); 2067 Assert (pSetVidPnSourceAddress->Flags.Value < 2); /* i.e. 0 or 1 (ModeChange) */ 2068 if (pSetVidPnSourceAddress->hAllocation) 2069 { 2070 pSource->pAllocation = (PVBOXWDDM_ALLOCATION)pSetVidPnSourceAddress->hAllocation; 2071 pAllocation = (PVBOXWDDM_ALLOCATION)pSetVidPnSourceAddress->hAllocation; 2072 } 2073 else 2074 pAllocation = pSource->pAllocation; 2075 2076 Assert(pAllocation); 2077 if (pAllocation) 2078 { 2079 Assert(pAllocation->enmType == VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE); 2080 PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE pPrimary = VBOXWDDM_ALLOCATION_BODY(pAllocation, VBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE); 2081 pAllocation->phAddress = pSetVidPnSourceAddress->PrimaryAddress; 2082 Assert (!pPrimary->bVisible); 2083 if (pPrimary->bVisible) 2084 { 2085 /* @todo: should not generally happen, but still inform host*/ 2086 } 2087 } 2088 else 2089 { 2090 drprintf((__FUNCTION__": no allocation data available!!\n")); 2091 Status = STATUS_INVALID_PARAMETER; 2092 } 2093 } 2094 else 2095 { 2096 drprintf((__FUNCTION__": invalid VidPnSourceId (%d), should be smaller than (%d)\n", pSetVidPnSourceAddress->VidPnSourceId, pDevExt->cSources)); 2097 Status = STATUS_INVALID_PARAMETER; 2098 } 2099 2100 dfprintf(("<== "__FUNCTION__ ", status(0x%x), context(0x%x)\n", Status, hAdapter)); 2101 2102 return Status; 2036 2103 } 2037 2104 … … 2242 2309 DECLINLINE(PVBOXWDDM_ALLOCATION_SHAREDPRIMARYSURFACE) vboxWddmCheckForVisiblePrimary(PDEVICE_EXTENSION pDevExt, PVBOXWDDM_ALLOCATION pAllocation) 2243 2310 { 2244 if (pAllocation->enmType != VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE)2311 if (pAllocation->enmType != VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE) 2245 2312 return NULL; 2246 2313 -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.h
r26661 r26667 23 23 typedef enum 24 24 { 25 VBOXWDDM_ALLOC_ UNEFINED = 0,26 VBOXWDDM_ALLOC_ STD_SHAREDPRIMARYSURFACE,27 VBOXWDDM_ALLOC_ STD_SHADOWSURFACE,28 VBOXWDDM_ALLOC_ STD_STAGINGSURFACE,25 VBOXWDDM_ALLOC_TYPE_UNEFINED = 0, 26 VBOXWDDM_ALLOC_TYPE_STD_SHAREDPRIMARYSURFACE, 27 VBOXWDDM_ALLOC_TYPE_STD_SHADOWSURFACE, 28 VBOXWDDM_ALLOC_TYPE_STD_STAGINGSURFACE, 29 29 /* this one is win 7-specific and hence unused for now */ 30 VBOXWDDM_ALLOC_ STD_GDISURFACE30 VBOXWDDM_ALLOC_TYPE_STD_GDISURFACE 31 31 /* custom allocation types requested from user-mode d3d module will go here */ 32 32 } VBOXWDDM_ALLOC_TYPE;
Note:
See TracChangeset
for help on using the changeset viewer.