VirtualBox

Changeset 102530 in vbox for trunk


Ignore:
Timestamp:
Dec 7, 2023 5:11:48 PM (14 months ago)
Author:
vboxsync
Message:

WDDM: user mode driver cleanup: bugref:10529

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/dx/VBoxDXDDI.cpp

    r102408 r102530  
    47354735{
    47364736    //DEBUG_BREAKPOINT_TEST();
    4737     RT_NOREF(hAdapter);
     4737    PVBOXDXADAPTER pAdapter = (PVBOXDXADAPTER)hAdapter.pDrvPrivate;
     4738    RT_NOREF(pAdapter);
    47384739    LogFlow(("vboxDXGetCaps: Type %d", pArg->Type));
    47394740
    47404741    switch (pArg->Type)
    47414742    {
    4742     case D3D11DDICAPS_THREADING:
    4743     {
    4744         D3D11DDI_THREADING_CAPS* pCaps = (D3D11DDI_THREADING_CAPS *)pArg->pData;
    4745         // TBD: Support these capabilities:
    4746         // D3D11DDICAPS_FREETHREADED, D3D11DDICAPS_COMMANDLISTS and D3D11DDICAPS_COMMANDLISTS_BUILD_2
    4747         pCaps->Caps = 0;
    4748         break;
    4749     }
    4750 
    4751     case D3D11DDICAPS_SHADER:
    4752     {
    4753         D3D11DDI_SHADER_CAPS* pCaps = (D3D11DDI_SHADER_CAPS*)pArg->pData;
    4754         pCaps->Caps = D3D11DDICAPS_SHADER_COMPUTE_PLUS_RAW_AND_STRUCTURED_BUFFERS_IN_SHADER_4_X;
    4755         break;
    4756     }
    4757     break;
    4758 
    4759     case D3D11_1DDICAPS_D3D11_OPTIONS:
    4760     {
    4761         D3D11_1DDI_D3D11_OPTIONS_DATA* pCaps = (D3D11_1DDI_D3D11_OPTIONS_DATA*)pArg->pData;
    4762         pCaps->OutputMergerLogicOp = TRUE;
    4763         pCaps->AssignDebugBinarySupport = TRUE;
    4764     }
    4765     break;
    4766 
    4767     case D3D11_1DDICAPS_ARCHITECTURE_INFO:
    4768     {
    4769         D3DDDICAPS_ARCHITECTURE_INFO* pCaps = (D3DDDICAPS_ARCHITECTURE_INFO *)pArg->pData;
    4770         pCaps->TileBasedDeferredRenderer = FALSE;
    4771     }
    4772     break;
    4773 
    4774     case D3D11_1DDICAPS_SHADER_MIN_PRECISION_SUPPORT:
    4775     {
    4776         D3DDDICAPS_SHADER_MIN_PRECISION_SUPPORT* pCaps = (D3DDDICAPS_SHADER_MIN_PRECISION_SUPPORT *)pArg->pData;
    4777         // The driver supports only the default precision for the shader model, and not a lower precision.
    4778         pCaps->VertexShaderMinPrecision = 0;
    4779         pCaps->PixelShaderMinPrecision  = 0;
    4780     }
    4781     break;
    4782 
    4783     case D3D11DDICAPS_3DPIPELINESUPPORT:
    4784     {
    4785         D3D11DDI_3DPIPELINESUPPORT_CAPS* pCaps = (D3D11DDI_3DPIPELINESUPPORT_CAPS *)pArg->pData;
    4786 
    4787         /* Support of 11.1 pipeline assumes the support of 11.0, 10.1 and 10.0 pipelines*/
    4788         pCaps->Caps =
    4789             D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11_1DDI_3DPIPELINELEVEL_11_1) |
    4790             D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_11_0) |
    4791             D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_10_1) |
    4792             D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_10_0);
    4793         break;
    4794     }
    4795     default:
    4796         break;
     4743        case D3D11DDICAPS_THREADING:
     4744        {
     4745            D3D11DDI_THREADING_CAPS *pCaps = (D3D11DDI_THREADING_CAPS *)pArg->pData;
     4746            pCaps->Caps = 0;
     4747            break;
     4748        }
     4749
     4750        case D3D11DDICAPS_SHADER:
     4751        {
     4752            D3D11DDI_SHADER_CAPS *pCaps = (D3D11DDI_SHADER_CAPS *)pArg->pData;
     4753            pCaps->Caps = D3D11DDICAPS_SHADER_COMPUTE_PLUS_RAW_AND_STRUCTURED_BUFFERS_IN_SHADER_4_X;
     4754            break;
     4755        }
     4756
     4757        case D3D11_1DDICAPS_D3D11_OPTIONS:
     4758        {
     4759            D3D11_1DDI_D3D11_OPTIONS_DATA *pCaps = (D3D11_1DDI_D3D11_OPTIONS_DATA *)pArg->pData;
     4760            pCaps->OutputMergerLogicOp = TRUE; /* Required for 11.1 driver. */
     4761            pCaps->AssignDebugBinarySupport = FALSE;
     4762            break;
     4763        }
     4764
     4765        case D3D11_1DDICAPS_ARCHITECTURE_INFO:
     4766        {
     4767            D3DDDICAPS_ARCHITECTURE_INFO *pCaps = (D3DDDICAPS_ARCHITECTURE_INFO *)pArg->pData;
     4768            pCaps->TileBasedDeferredRenderer = FALSE;
     4769            break;
     4770        }
     4771
     4772        case D3D11_1DDICAPS_SHADER_MIN_PRECISION_SUPPORT:
     4773        {
     4774            D3DDDICAPS_SHADER_MIN_PRECISION_SUPPORT *pCaps = (D3DDDICAPS_SHADER_MIN_PRECISION_SUPPORT *)pArg->pData;
     4775            /* The driver supports only the default precision for the shader model, and not a lower precision. */
     4776            pCaps->VertexShaderMinPrecision = 0;
     4777            pCaps->PixelShaderMinPrecision  = 0;
     4778            break;
     4779        }
     4780
     4781        case D3D11DDICAPS_3DPIPELINESUPPORT:
     4782        {
     4783            D3D11DDI_3DPIPELINESUPPORT_CAPS *pCaps = (D3D11DDI_3DPIPELINESUPPORT_CAPS *)pArg->pData;
     4784
     4785            /* Support of 11.1 pipeline assumes the support of 11.0, 10.1 and 10.0 pipelines. */
     4786            pCaps->Caps =
     4787                D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11_1DDI_3DPIPELINELEVEL_11_1) |
     4788                D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_11_0) |
     4789                D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_10_1) |
     4790                D3D11DDI_ENCODE_3DPIPELINESUPPORT_CAP(D3D11DDI_3DPIPELINELEVEL_10_0);
     4791            break;
     4792        }
     4793        default:
     4794            break;
    47974795    }
    47984796
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette