共用方式為


DXGK_IOMMU_CAPS結構(d3dkmddi.h)

DXGK_IOMMU_CAPS 結構可用來指出驅動程式是否支援IOMMU線性重新對應。

語法

typedef struct _DXGK_IOMMU_CAPS {
  union {
    struct {
      UINT32 IommuIsolationSupported : 1;
      UINT32 IommuIsolationRequired : 1;
      UINT32 DmaRemappingSupported : 1;
      UINT32 GpuVaIommuRequired : 1;
      UINT32 GpuVaIommuGlobalRequired : 1;
      UINT32 Reserved : 27;
    };
    UINT32 Value;
  };
} DXGK_IOMMU_CAPS;

成員

IommuIsolationSupported

表示驅動程式支援 IOMMU 隔離,並充分利用 IOMMU 回呼 API,將驅動程式配置的記憶體對象對應至 IOMMU 網域。 此欄位會模擬 DXGK_DRIVERCAPS。MemoryManagementCaps.IOMMUSecureModeSupportedDxgkrnl 預期這些功能相符。

IommuIsolationRequired

表示硬體需要IOMMU才能正確且安全地運作。 如果系統上沒有 IOMMU,或網域無法連結至裝置,裝置將不會啟動。 此欄位會模擬 DXGK_DRIVERCAPS。MemoryManagementCaps.IOMMUSecureModeRequiredDxgkrnl 預期這些功能相符。

DmaRemappingSupported

表示驅動程式支援線性重新對應,而不只是用於標準隔離的 1:1 對應。 如果多個鏈接的實體配接器具有其最高可見位址的不同值,驅動程式應該報告所有實體適配卡的最小值。

GpuVaIommuRequired

GpuVaIommuGlobalRequired

Reserved

保留;請勿使用 。

Value

存取位的替代方法。

言論

Dxgkrnl 呼叫 DxgkDdiQueryAdapterInfo 時,驅動程式會填入這個結構,DXGK_QUERYADAPTERINFOTYPE 值為 DXGKQAITYPE_IOMMU_CAPSDxgkrnl 會在 DxgkddiAddDevice 之後呼叫 DxgkDdiQueryAdapterInfo,但在 DxgkddiStartDevice之前。 驅動程式應該知道目前所有連結的實體配接器。

若要指出邏輯 DMA 重新對應支援,驅動程式也必須據以填入 DXGK_PHYSICAL_MEMORY_CAPS

如需詳細資訊,請參閱 IOMMU DMA 重新對應

要求

要求 價值
支援的最低伺服器 Windows Server 2022
標頭 d3dkmddi.h

另請參閱

DXGK_PHYSICAL_MEMORY_CAPS

DXGK_QUERYADAPTERINFOTYPE

DXGK_VIDMMCAPS

DxgkddiAddDevice

DxgkDdiQueryAdapterInfo

DxgkddiStartDevice