Changeset 52631 in vbox
- Timestamp:
- Sep 5, 2014 9:11:11 PM (10 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVidPn.cpp
r52348 r52631 526 526 { 527 527 WARN(("pfnAddMode failed, Status 0x%x", Status)); 528 VBoxVidPnDumpSourceMode("SourceMode: ", pVidPnModeInfo, "\n"); 528 529 NTSTATUS tmpStatus = pVidPnModeSetInterface->pfnReleaseModeInfo(hVidPnModeSet, pVidPnModeInfo); 529 530 Assert(tmpStatus == STATUS_SUCCESS); … … 585 586 { 586 587 WARN(("pfnAddMode failed, Status 0x%x", Status)); 588 VBoxVidPnDumpTargetMode("TargetMode: ", pVidPnModeInfo, "\n"); 587 589 NTSTATUS tmpStatus = pVidPnModeSetInterface->pfnReleaseModeInfo(hVidPnModeSet, pVidPnModeInfo); 588 590 Assert(tmpStatus == STATUS_SUCCESS); … … 850 852 { 851 853 WARN(("vboxVidPnTargetModeSetFromArray failed Status(0x%x)", Status)); 854 vboxVidPnDumpVidPn("\nVidPn: ---------\n", pDevExt, hVidPn, pVidPnInterface, "\n------\n"); 855 VBoxVidPnDumpMonitorModeSet("MonModeSet: --------\n", pDevExt, VidPnTargetId, "\n------\n"); 856 NTSTATUS tmpStatus = pVidPnInterface->pfnReleaseTargetModeSet(hVidPn, hVidPnModeSet); 857 Assert(tmpStatus == STATUS_SUCCESS); 852 858 return Status; 853 859 } … … 857 863 { 858 864 WARN(("\n\n!!!!!!!\n\n pfnAssignTargetModeSet failed, Status(0x%x)", Status)); 865 vboxVidPnDumpVidPn("\nVidPn: ---------\n", pDevExt, hVidPn, pVidPnInterface, "\n------\n"); 866 VBoxVidPnDumpMonitorModeSet("MonModeSet: --------\n", pDevExt, VidPnTargetId, "\n------\n"); 859 867 NTSTATUS tmpStatus = pVidPnInterface->pfnReleaseTargetModeSet(hVidPn, hVidPnModeSet); 860 868 Assert(tmpStatus == STATUS_SUCCESS); … … 908 916 { 909 917 WARN(("vboxVidPnSourceModeSetFromArray failed Status(0x%x)", Status)); 918 vboxVidPnDumpVidPn("\nVidPn: ---------\n", pDevExt, hVidPn, pVidPnInterface, "\n------\n"); 919 VBoxVidPnDumpMonitorModeSet("MonModeSet: --------\n", pDevExt, VidPnTargetId, "\n------\n"); 920 NTSTATUS tmpStatus = pVidPnInterface->pfnReleaseSourceModeSet(hVidPn, hVidPnModeSet); 921 Assert(tmpStatus == STATUS_SUCCESS); 910 922 return Status; 911 923 } … … 915 927 { 916 928 WARN(("\n\n!!!!!!!\n\n pfnAssignSourceModeSet failed, Status(0x%x)", Status)); 929 vboxVidPnDumpVidPn("\nVidPn: ---------\n", pDevExt, hVidPn, pVidPnInterface, "\n------\n"); 930 VBoxVidPnDumpMonitorModeSet("MonModeSet: --------\n", pDevExt, VidPnTargetId, "\n------\n"); 917 931 NTSTATUS tmpStatus = pVidPnInterface->pfnReleaseSourceModeSet(hVidPn, hVidPnModeSet); 918 932 Assert(tmpStatus == STATUS_SUCCESS); … … 1752 1766 { 1753 1767 WARN(("vboxVidPnCollectInfoForPathTarget failed Status(0x%x\n", Status)); 1768 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1754 1769 break; 1755 1770 } … … 1767 1782 { 1768 1783 WARN(("vboxVidPnCollectInfoForPathSource failed Status(0x%x\n", Status)); 1784 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1769 1785 break; 1770 1786 } … … 1782 1798 { 1783 1799 WARN(("PathIter failed Status()0x%x\n", Status)); 1800 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1784 1801 goto done; 1785 1802 } … … 1824 1841 { 1825 1842 WARN(("pfnUpdatePathSupportInfo failed Status()0x%x\n", Status)); 1843 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1826 1844 goto done; 1827 1845 } … … 1840 1858 { 1841 1859 WARN(("vboxVidPnApplyInfoForPathTarget failed Status(0x%x\n", Status)); 1860 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1842 1861 break; 1843 1862 } … … 1853 1872 { 1854 1873 WARN(("vboxVidPnApplyInfoForPathSource failed Status(0x%x\n", Status)); 1874 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1855 1875 break; 1856 1876 } … … 1866 1886 { 1867 1887 WARN(("PathIter failed Status()0x%x\n", Status)); 1888 VBoxVidPnDumpCofuncModalityInfo("Modality Info: ", enmPivot, pPivot, "\n"); 1868 1889 goto done; 1869 1890 } … … 2476 2497 VBOXVIDPNDUMP_STRCASE(D3DKMDT_CB_YCBCR); 2477 2498 VBOXVIDPNDUMP_STRCASE(D3DKMDT_CB_YPBPR); 2499 VBOXVIDPNDUMP_STRCASE_UNKNOWN(); 2500 } 2501 } 2502 2503 const char * vboxVidPnDumpStrMonCapabilitiesOrigin(D3DKMDT_MONITOR_CAPABILITIES_ORIGIN enmOrigin) 2504 { 2505 switch (enmOrigin) 2506 { 2507 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_UNINITIALIZED); 2508 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_DEFAULTMONITORPROFILE); 2509 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_MONITORDESCRIPTOR); 2510 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_MONITORDESCRIPTOR_REGISTRYOVERRIDE); 2511 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_SPECIFICCAP_REGISTRYOVERRIDE); 2512 VBOXVIDPNDUMP_STRCASE(D3DKMDT_MCO_DRIVER); 2478 2513 VBOXVIDPNDUMP_STRCASE_UNKNOWN(); 2479 2514 } … … 2738 2773 } 2739 2774 2740 void vboxVidPnDumpSourceMode(const char *pPrefix, const D3DKMDT_VIDPN_SOURCE_MODE* pVidPnSourceModeInfo, const char *pSuffix)2775 void VBoxVidPnDumpSourceMode(const char *pPrefix, const D3DKMDT_VIDPN_SOURCE_MODE* pVidPnSourceModeInfo, const char *pSuffix) 2741 2776 { 2742 2777 LOGREL_EXACT(("%sType(%s), ", pPrefix, vboxVidPnDumpStrSourceModeType(pVidPnSourceModeInfo->Type))); … … 2758 2793 } 2759 2794 2760 void vboxVidPnDumpTargetMode(const char *pPrefix, const D3DKMDT_VIDPN_TARGET_MODE* CONST pVidPnTargetModeInfo, const char *pSuffix)2795 void VBoxVidPnDumpTargetMode(const char *pPrefix, const D3DKMDT_VIDPN_TARGET_MODE* CONST pVidPnTargetModeInfo, const char *pSuffix) 2761 2796 { 2762 2797 LOGREL_EXACT(("%s", pPrefix)); 2798 LOGREL_EXACT(("ID: %d, ", pVidPnTargetModeInfo->Id)); 2763 2799 vboxVidPnDumpSignalInfo("VSI: ", &pVidPnTargetModeInfo->VideoSignalInfo, ", "); 2764 2800 LOGREL_EXACT(("Preference(%s)%s", vboxVidPnDumpStrModePreference(pVidPnTargetModeInfo->Preference), pSuffix)); 2801 } 2802 2803 void VBoxVidPnDumpMonitorMode(const char *pPrefix, const D3DKMDT_MONITOR_SOURCE_MODE *pVidPnModeInfo, const char *pSuffix) 2804 { 2805 LOGREL_EXACT(("%s", pPrefix)); 2806 2807 LOGREL_EXACT(("ID: %d, ", pVidPnModeInfo->Id)); 2808 2809 vboxVidPnDumpSignalInfo("VSI: ", &pVidPnModeInfo->VideoSignalInfo, ", "); 2810 2811 LOGREL_EXACT(("ColorBasis: %s, ", vboxVidPnDumpStrColorBasis(pVidPnModeInfo->ColorBasis))); 2812 2813 vboxVidPnDumpRanges("Ranges: ", &pVidPnModeInfo->ColorCoeffDynamicRanges, ", "); 2814 2815 LOGREL_EXACT(("MonCapOr: %s, ", vboxVidPnDumpStrMonCapabilitiesOrigin(pVidPnModeInfo->Origin))); 2816 2817 LOGREL_EXACT(("Preference(%s)%s", vboxVidPnDumpStrModePreference(pVidPnModeInfo->Preference), pSuffix)); 2818 } 2819 2820 NTSTATUS VBoxVidPnDumpMonitorModeSet(const char *pPrefix, PVBOXMP_DEVEXT pDevExt, uint32_t u32Target, const char *pSuffix) 2821 { 2822 LOGREL_EXACT(("%s Tgt[%d]\n", pPrefix, u32Target)); 2823 2824 NTSTATUS Status; 2825 CONST DXGK_MONITOR_INTERFACE *pMonitorInterface; 2826 Status = pDevExt->u.primary.DxgkInterface.DxgkCbQueryMonitorInterface(pDevExt->u.primary.DxgkInterface.DeviceHandle, DXGK_MONITOR_INTERFACE_VERSION_V1, &pMonitorInterface); 2827 if (!NT_SUCCESS(Status)) 2828 { 2829 WARN(("DxgkCbQueryMonitorInterface failed, Status()0x%x", Status)); 2830 return Status; 2831 } 2832 2833 D3DKMDT_HMONITORSOURCEMODESET hVidPnModeSet; 2834 CONST DXGK_MONITORSOURCEMODESET_INTERFACE *pVidPnModeSetInterface; 2835 2836 Status = pMonitorInterface->pfnAcquireMonitorSourceModeSet(pDevExt->u.primary.DxgkInterface.DeviceHandle, 2837 u32Target, 2838 &hVidPnModeSet, 2839 &pVidPnModeSetInterface); 2840 if (!NT_SUCCESS(Status)) 2841 { 2842 WARN(("DxgkCbQueryMonitorInterface failed, Status()0x%x", Status)); 2843 return Status; 2844 } 2845 2846 VBOXVIDPN_MONITORMODE_ITER Iter; 2847 const D3DKMDT_MONITOR_SOURCE_MODE *pVidPnModeInfo; 2848 2849 VBoxVidPnMonitorModeIterInit(&Iter, hVidPnModeSet, pVidPnModeSetInterface); 2850 2851 while ((pVidPnModeInfo = VBoxVidPnMonitorModeIterNext(&Iter)) != NULL) 2852 { 2853 VBoxVidPnDumpMonitorMode("MonitorMode: ",pVidPnModeInfo, "\n"); 2854 } 2855 2856 VBoxVidPnMonitorModeIterTerm(&Iter); 2857 2858 Status = VBoxVidPnMonitorModeIterStatus(&Iter); 2859 if (!NT_SUCCESS(Status)) 2860 { 2861 WARN(("iter status failed %#x", Status)); 2862 } 2863 2864 NTSTATUS tmpStatus = pMonitorInterface->pfnReleaseMonitorSourceModeSet(pDevExt->u.primary.DxgkInterface.DeviceHandle, hVidPnModeSet); 2865 if (!NT_SUCCESS(tmpStatus)) 2866 WARN(("pfnReleaseMonitorSourceModeSet failed tmpStatus(0x%x)", tmpStatus)); 2867 2868 LOGREL_EXACT(("%s", pSuffix)); 2869 2870 return Status; 2765 2871 } 2766 2872 … … 2783 2889 if (Status == STATUS_SUCCESS) 2784 2890 { 2785 vboxVidPnDumpSourceMode("Source Pinned: ", pPinnedVidPnSourceModeInfo, "\n");2891 VBoxVidPnDumpSourceMode("Source Pinned: ", pPinnedVidPnSourceModeInfo, "\n"); 2786 2892 pCurVidPnSourceModeSetInterface->pfnReleaseModeInfo(hCurVidPnSourceModeSet, pPinnedVidPnSourceModeInfo); 2787 2893 } … … 2806 2912 const D3DKMDT_VIDPN_SOURCE_MODE *pNewVidPnSourceModeInfo, PVOID pContext) 2807 2913 { 2808 vboxVidPnDumpSourceMode("SourceMode: ", pNewVidPnSourceModeInfo, "\n");2914 VBoxVidPnDumpSourceMode("SourceMode: ", pNewVidPnSourceModeInfo, "\n"); 2809 2915 return TRUE; 2810 2916 } … … 2844 2950 const D3DKMDT_VIDPN_TARGET_MODE *pNewVidPnTargetModeInfo, PVOID pContext) 2845 2951 { 2846 vboxVidPnDumpTargetMode("TargetMode: ", pNewVidPnTargetModeInfo, "\n");2952 VBoxVidPnDumpTargetMode("TargetMode: ", pNewVidPnTargetModeInfo, "\n"); 2847 2953 return TRUE; 2848 2954 } … … 2898 3004 if (Status == STATUS_SUCCESS) 2899 3005 { 2900 vboxVidPnDumpTargetMode("Target Pinned: ", pPinnedVidPnTargetModeInfo, "\n");3006 VBoxVidPnDumpTargetMode("Target Pinned: ", pPinnedVidPnTargetModeInfo, "\n"); 2901 3007 pCurVidPnTargetModeSetInterface->pfnReleaseModeInfo(hCurVidPnTargetModeSet, pPinnedVidPnTargetModeInfo); 2902 3008 } … … 2915 3021 LOGREL_EXACT(("ERROR getting TargetModeSet(0x%x)\n", Status)); 2916 3022 } 3023 } 3024 3025 void VBoxVidPnDumpCofuncModalityInfo(const char *pPrefix, D3DKMDT_ENUMCOFUNCMODALITY_PIVOT_TYPE enmEnumPivotType, const DXGK_ENUM_PIVOT *pPivot, const char *pSuffix) 3026 { 3027 LOGREL_EXACT(("%sPivotType(%s), SourceId(0x%x), TargetId(0x%x),%s", pPrefix, vboxVidPnDumpStrCFMPivotType(enmEnumPivotType), 3028 pPivot->VidPnSourceId, pPivot->VidPnTargetId, pSuffix)); 2917 3029 } 2918 3030 -
trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPVidPn.h
r52348 r52631 96 96 PFNVBOXVIDPNENUMTARGETSFORSOURCE pfnCallback, PVOID pContext); 97 97 98 void VBoxVidPnDumpTargetMode(const char *pPrefix, const D3DKMDT_VIDPN_TARGET_MODE* CONST pVidPnTargetModeInfo, const char *pSuffix); 99 void VBoxVidPnDumpMonitorMode(const char *pPrefix, const D3DKMDT_MONITOR_SOURCE_MODE *pVidPnModeInfo, const char *pSuffix); 100 NTSTATUS VBoxVidPnDumpMonitorModeSet(const char *pPrefix, PVBOXMP_DEVEXT pDevExt, uint32_t u32Target, const char *pSuffix); 101 void VBoxVidPnDumpSourceMode(const char *pPrefix, const D3DKMDT_VIDPN_SOURCE_MODE* pVidPnSourceModeInfo, const char *pSuffix); 102 void VBoxVidPnDumpCofuncModalityInfo(const char *pPrefix, D3DKMDT_ENUMCOFUNCMODALITY_PIVOT_TYPE enmEnumPivotType, const DXGK_ENUM_PIVOT *pPivot, const char *pSuffix); 103 98 104 void vboxVidPnDumpVidPn(const char * pPrefix, PVBOXMP_DEVEXT pDevExt, D3DKMDT_HVIDPN hVidPn, const DXGK_VIDPN_INTERFACE* pVidPnInterface, const char * pSuffix); 99 105 void vboxVidPnDumpCofuncModalityArg(const char *pPrefix, CONST DXGKARG_ENUMVIDPNCOFUNCMODALITY* CONST pEnumCofuncModalityArg, const char *pSuffix);
Note:
See TracChangeset
for help on using the changeset viewer.