Changeset 27219 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Timestamp:
- Mar 9, 2010 3:55:30 PM (15 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoVidPn.cpp
r27201 r27219 35 35 */ 36 36 37 if (pNewVidPnPresentPathInfo->ContentTransformation.Scaling != D3DKMDT_VPPS_IDENTITY 37 if (pNewVidPnPresentPathInfo->ContentTransformation.Scaling != D3DKMDT_VPPS_UNPINNED 38 || pNewVidPnPresentPathInfo->ContentTransformation.Scaling != D3DKMDT_VPPS_IDENTITY 38 39 || pNewVidPnPresentPathInfo->ContentTransformation.Scaling != D3DKMDT_VPPS_CENTERED) 39 40 { … … 658 659 CONST D3DKMDT_VIDPN_SOURCE_MODE* pPinnedVidPnSourceModeInfo; 659 660 Status = pCurVidPnSourceModeSetInterface->pfnAcquirePinnedModeInfo(hCurVidPnSourceModeSet, &pPinnedVidPnSourceModeInfo); 660 Assert(Status == STATUS_SUCCESS );661 Assert(Status == STATUS_SUCCESS || Status == STATUS_GRAPHICS_MODE_NOT_PINNED); 661 662 if (Status == STATUS_SUCCESS) 662 663 { 663 if (!pPinnedVidPnSourceModeInfo) 664 { 665 /* just create and populate the new source mode set for now */ 666 D3DKMDT_HVIDPNSOURCEMODESET hNewVidPnSourceModeSet; 667 const DXGK_VIDPNSOURCEMODESET_INTERFACE *pNewVidPnSourceModeSetInterface; 668 Status = pVidPnInterface->pfnCreateNewSourceModeSet(hDesiredVidPn, 664 Assert (pPinnedVidPnSourceModeInfo); 665 /* release */ 666 pCurVidPnSourceModeSetInterface->pfnReleaseModeInfo(hCurVidPnSourceModeSet, pPinnedVidPnSourceModeInfo); 667 668 } 669 else if (Status == STATUS_GRAPHICS_MODE_NOT_PINNED) 670 { 671 /* just create and populate the new source mode set for now */ 672 D3DKMDT_HVIDPNSOURCEMODESET hNewVidPnSourceModeSet; 673 const DXGK_VIDPNSOURCEMODESET_INTERFACE *pNewVidPnSourceModeSetInterface; 674 Status = pVidPnInterface->pfnCreateNewSourceModeSet(hDesiredVidPn, 669 675 pNewVidPnPresentPathInfo->VidPnSourceId, /*__in CONST D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId */ 670 676 &hNewVidPnSourceModeSet, 671 677 &pNewVidPnSourceModeSetInterface); 678 Assert(Status == STATUS_SUCCESS); 679 if (Status == STATUS_SUCCESS) 680 { 681 Status = vboxVidPnPopulateSourceModeSetFromLegacy(pDevExt, 682 hNewVidPnSourceModeSet, pNewVidPnSourceModeSetInterface, 683 pModes, cModes, iPreferredMode); 672 684 Assert(Status == STATUS_SUCCESS); 673 685 if (Status == STATUS_SUCCESS) 674 686 { 675 Status = vboxVidPnPopulateSourceModeSetFromLegacy(pDevExt, 676 hNewVidPnSourceModeSet, pNewVidPnSourceModeSetInterface, 677 pModes, cModes, iPreferredMode); 678 Assert(Status == STATUS_SUCCESS); 679 if (Status == STATUS_SUCCESS) 680 { 681 Status = pVidPnInterface->pfnAssignSourceModeSet(hDesiredVidPn, 687 Status = pVidPnInterface->pfnAssignSourceModeSet(hDesiredVidPn, 682 688 pNewVidPnPresentPathInfo->VidPnSourceId, 683 689 hNewVidPnSourceModeSet); 684 Assert(Status == STATUS_SUCCESS); 685 if(Status != STATUS_SUCCESS) 686 { 687 drprintf((__FUNCTION__": pfnAssignSourceModeSet failed Status(0x%x)\n", Status)); 688 pVidPnInterface->pfnReleaseSourceModeSet(hDesiredVidPn, hNewVidPnSourceModeSet); 689 } 690 } 691 else 690 Assert(Status == STATUS_SUCCESS); 691 if(Status != STATUS_SUCCESS) 692 692 { 693 drprintf((__FUNCTION__": vboxVidPnPopulateSourceModeSetFromLegacyfailed Status(0x%x)\n", Status));693 drprintf((__FUNCTION__": pfnAssignSourceModeSet failed Status(0x%x)\n", Status)); 694 694 pVidPnInterface->pfnReleaseSourceModeSet(hDesiredVidPn, hNewVidPnSourceModeSet); 695 695 } 696 696 } 697 697 else 698 drprintf((__FUNCTION__": pfnCreateNewSourceModeSet failed Status(0x%x)\n", Status)); 698 { 699 drprintf((__FUNCTION__": vboxVidPnPopulateSourceModeSetFromLegacy failed Status(0x%x)\n", Status)); 700 pVidPnInterface->pfnReleaseSourceModeSet(hDesiredVidPn, hNewVidPnSourceModeSet); 701 } 699 702 } 700 703 else 701 { 702 /* release */ 703 pCurVidPnSourceModeSetInterface->pfnReleaseModeInfo(hCurVidPnSourceModeSet, pPinnedVidPnSourceModeInfo); 704 } 704 drprintf((__FUNCTION__": pfnCreateNewSourceModeSet failed Status(0x%x)\n", Status)); 705 705 } 706 706 else … … 732 732 CONST D3DKMDT_VIDPN_TARGET_MODE* pPinnedVidPnTargetModeInfo; 733 733 Status = pCurVidPnTargetModeSetInterface->pfnAcquirePinnedModeInfo(hCurVidPnTargetModeSet, &pPinnedVidPnTargetModeInfo); 734 Assert(Status == STATUS_SUCCESS );734 Assert(Status == STATUS_SUCCESS || Status == STATUS_GRAPHICS_MODE_NOT_PINNED); 735 735 if (Status == STATUS_SUCCESS) 736 736 { 737 if (!pPinnedVidPnTargetModeInfo) 738 { 739 /* just create and populate a new target mode info for now */ 740 D3DKMDT_HVIDPNTARGETMODESET hNewVidPnTargetModeSet; 741 const DXGK_VIDPNTARGETMODESET_INTERFACE *pNewVidPnTargetModeSetInterface; 742 Status = pVidPnInterface->pfnCreateNewTargetModeSet(hDesiredVidPn, 737 Assert (pPinnedVidPnTargetModeInfo); 738 /* nothing to be done here, just release */ 739 pCurVidPnTargetModeSetInterface->pfnReleaseModeInfo(hCurVidPnTargetModeSet, pPinnedVidPnTargetModeInfo); 740 } 741 else if (Status == STATUS_GRAPHICS_MODE_NOT_PINNED) 742 { 743 /* just create and populate a new target mode info for now */ 744 D3DKMDT_HVIDPNTARGETMODESET hNewVidPnTargetModeSet; 745 const DXGK_VIDPNTARGETMODESET_INTERFACE *pNewVidPnTargetModeSetInterface; 746 Status = pVidPnInterface->pfnCreateNewTargetModeSet(hDesiredVidPn, 743 747 pNewVidPnPresentPathInfo->VidPnTargetId, /*__in CONST D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId */ 744 748 &hNewVidPnTargetModeSet, 745 749 &pNewVidPnTargetModeSetInterface); 750 Assert(Status == STATUS_SUCCESS); 751 if (Status == STATUS_SUCCESS) 752 { 753 Status = vboxVidPnPopulateTargetModeSetFromLegacy(pDevExt, 754 hNewVidPnTargetModeSet, pNewVidPnTargetModeSetInterface, 755 pResolutions, cResolutions, &pModes[iPreferredMode]); 746 756 Assert(Status == STATUS_SUCCESS); 747 757 if (Status == STATUS_SUCCESS) 748 758 { 749 Status = vboxVidPnPopulateTargetModeSetFromLegacy(pDevExt, 750 hNewVidPnTargetModeSet, pNewVidPnTargetModeSetInterface, 751 pResolutions, cResolutions, &pModes[iPreferredMode]); 752 Assert(Status == STATUS_SUCCESS); 753 if (Status == STATUS_SUCCESS) 754 { 755 Status = pVidPnInterface->pfnAssignTargetModeSet(hDesiredVidPn, 759 Status = pVidPnInterface->pfnAssignTargetModeSet(hDesiredVidPn, 756 760 pNewVidPnPresentPathInfo->VidPnTargetId, 757 761 hNewVidPnTargetModeSet); 758 Assert(Status == STATUS_SUCCESS); 759 if(Status != STATUS_SUCCESS) 760 { 761 drprintf((__FUNCTION__": pfnAssignTargetModeSet failed Status(0x%x)\n", Status)); 762 pVidPnInterface->pfnReleaseTargetModeSet(hDesiredVidPn, hNewVidPnTargetModeSet); 763 } 764 } 765 else 762 Assert(Status == STATUS_SUCCESS); 763 if(Status != STATUS_SUCCESS) 766 764 { 767 drprintf((__FUNCTION__": vboxVidPnPopulateTargetModeSetFromLegacyfailed Status(0x%x)\n", Status));765 drprintf((__FUNCTION__": pfnAssignTargetModeSet failed Status(0x%x)\n", Status)); 768 766 pVidPnInterface->pfnReleaseTargetModeSet(hDesiredVidPn, hNewVidPnTargetModeSet); 769 767 } 770 768 } 771 }772 else773 {774 /* nothing to be done here, just release */775 pCurVidPnTargetModeSetInterface->pfnReleaseModeInfo(hCurVidPnTargetModeSet, pPinnedVidPnTargetModeInfo);769 else 770 { 771 drprintf((__FUNCTION__": vboxVidPnPopulateTargetModeSetFromLegacy failed Status(0x%x)\n", Status)); 772 pVidPnInterface->pfnReleaseTargetModeSet(hDesiredVidPn, hNewVidPnTargetModeSet); 773 } 776 774 } 777 775 } … … 963 961 { 964 962 Assert(pPinnedVidPnSourceModeInfo); 965 if (pPinnedVidPnSourceModeInfo) 966 { 967 Status = vboxVidPnCommitSourceMode(pDevExt, pPinnedVidPnSourceModeInfo, pAllocation); 968 Assert(Status == STATUS_SUCCESS); 969 if (Status != STATUS_SUCCESS) 970 drprintf((__FUNCTION__": vboxVidPnCommitSourceMode failed Status(0x%x)\n", Status)); 971 /* release */ 972 pCurVidPnSourceModeSetInterface->pfnReleaseModeInfo(hCurVidPnSourceModeSet, pPinnedVidPnSourceModeInfo); 973 } 974 else 975 drprintf((__FUNCTION__": no pPinnedVidPnSourceModeInfo available for source id (%d)\n", srcId)); 976 } 963 Status = vboxVidPnCommitSourceMode(pDevExt, pPinnedVidPnSourceModeInfo, pAllocation); 964 Assert(Status == STATUS_SUCCESS); 965 if (Status != STATUS_SUCCESS) 966 drprintf((__FUNCTION__": vboxVidPnCommitSourceMode failed Status(0x%x)\n", Status)); 967 /* release */ 968 pCurVidPnSourceModeSetInterface->pfnReleaseModeInfo(hCurVidPnSourceModeSet, pPinnedVidPnSourceModeInfo); 969 } 970 else if (Status == STATUS_GRAPHICS_MODE_NOT_PINNED) 971 drprintf((__FUNCTION__": no pPinnedVidPnSourceModeInfo available for source id (%d)\n", srcId)); 977 972 else 978 973 drprintf((__FUNCTION__": pfnAcquirePinnedModeInfo failed Status(0x%x)\n", Status)); -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.cpp
r27205 r27219 1094 1094 PDEVICE_EXTENSION pContext = (PDEVICE_EXTENSION)hAdapter; 1095 1095 1096 vboxVDbgBreakF ();1096 vboxVDbgBreakFv(); 1097 1097 1098 1098 switch (pQueryAdapterInfo->Type) … … 1377 1377 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1378 1378 1379 AssertBreakpoint();1379 vboxVDbgBreakF(); 1380 1380 1381 1381 NTSTATUS Status = STATUS_SUCCESS; … … 1434 1434 dfprintf(("==> "__FUNCTION__ ", hAdapter(0x%x)\n", hAdapter)); 1435 1435 1436 AssertBreakpoint(); 1436 vboxVDbgBreakF(); 1437 1437 1438 PVBOXWDDM_ALLOCATION pAllocation = (PVBOXWDDM_ALLOCATION)pDescribeAllocation->hAllocation; 1438 1439 pDescribeAllocation->Width = pAllocation->u.SurfInfo.width; … … 1463 1464 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1464 1465 1465 AssertBreakpoint();1466 vboxVDbgBreakF(); 1466 1467 1467 1468 NTSTATUS Status = STATUS_SUCCESS; … … 1693 1694 } 1694 1695 1696 /* 1697 * DxgkDdiBuildPagingBuffer 1698 */ 1695 1699 NTSTATUS 1696 1700 APIENTRY … … 1702 1706 PAGED_CODE(); 1703 1707 1704 AssertBreakpoint();1708 vboxVDbgBreakF(); 1705 1709 1706 1710 NTSTATUS Status = STATUS_SUCCESS; … … 1857 1861 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 1858 1862 1859 AssertBreakpoint();1863 vboxVDbgBreakF(); 1860 1864 1861 1865 PDEVICE_EXTENSION pContext = (PDEVICE_EXTENSION)hAdapter; … … 2153 2157 dfprintf(("==> "__FUNCTION__ ", context(0x%x)\n", hAdapter)); 2154 2158 2159 vboxVDbgBreakF(); 2160 2155 2161 PDEVICE_EXTENSION pContext = (PDEVICE_EXTENSION)hAdapter; 2156 2162 … … 2468 2474 dfprintf(("==> "__FUNCTION__ ", hAdapter(0x%x)\n", hAdapter)); 2469 2475 2470 vboxVDbgBreakF ();2476 vboxVDbgBreakFv(); 2471 2477 2472 2478 dfprintf(("<== "__FUNCTION__ ", hAdapter(0x%x)\n", hAdapter)); … … 2558 2564 } 2559 2565 2566 /* 2567 * DxgkDdiOpenAllocation 2568 */ 2560 2569 NTSTATUS 2561 2570 APIENTRY … … 2569 2578 dfprintf(("==> "__FUNCTION__ ", hDevice(0x%x)\n", hDevice)); 2570 2579 2571 AssertBreakpoint();2580 vboxVDbgBreakF(); 2572 2581 2573 2582 NTSTATUS Status = STATUS_SUCCESS; … … 2863 2872 dfprintf(("==> "__FUNCTION__ ", hDevice(0x%x)\n", hDevice)); 2864 2873 2865 vboxVDbgBreakF ();2874 vboxVDbgBreakFv(); 2866 2875 2867 2876 NTSTATUS Status = STATUS_SUCCESS; … … 2870 2879 2871 2880 pContext->pDevice = pDevice; 2881 pContext->hContext = pCreateContext->hContext; 2872 2882 pContext->EngineAffinity = pCreateContext->EngineAffinity; 2873 2883 pContext->NodeOrdinal = pCreateContext->NodeOrdinal; -
trunk/src/VBox/Additions/WINNT/Graphics/Miniport/wddm/VBoxVideoWddm.h
r27055 r27219 115 115 { 116 116 struct VBOXWDDM_DEVICE * pDevice; 117 HANDLE hContext; 117 118 VBOXWDDM_CONTEXT_TYPE enmType; 118 119 UINT NodeOrdinal;
Note:
See TracChangeset
for help on using the changeset viewer.