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 Reserved : 29;
    };
    UINT32 Value;
  };
} DXGK_IOMMU_CAPS;

成员

IommuIsolationSupported

指示驱动程序支持 IOMMU 隔离,并充分利用 IOMMU 回调 API 将驱动程序分配的内存对象映射到 IOMMU 域。 此字段模拟 DXGK_DRIVERCAPS。MemoryManagementCaps.IOMMUSecureModeSupportedDxgkrnl 希望这些功能匹配。

IommuIsolationRequired

指示需要 IOMMU 才能使硬件正常运行且安全。 如果系统上不存在 IOMMU 或域无法附加到设备,则设备将不会启动。 此字段模拟 DXGK_DRIVERCAPS。MemoryManagementCaps.IOMMUSecureModeRequiredDxgkrnl 希望这些功能匹配。

DmaRemappingSupported

指示驱动程序支持线性重新映射,而不仅仅是用于标准隔离的 1:1 映射。 如果多个链接的物理适配器具有其最高可见地址的不同值,驱动程序应报告所有物理适配器的最小值。

Reserved

保留值;请勿使用。

Value

用于访问位的替代方法。

注解

Dxgkrnl 使用DXGK_QUERYADAPTERINFOTYPE值为 DXGKQAITYPE_IOMMU_CAPS 调用 DxgkDdiQueryAdapterInfo 时,驱动程序将填充此结构。 Dxgkrnl 将在为所有物理适配器调用 DxgkddiAddDevice 之后调用 DxgkDdiQueryAdapterInfo,但在 DxgkddiStartDevice 之前调用 DxgkddiQueryAdapterInfo 此时,驱动程序应知道所有链接的物理适配器。

若要指示逻辑 DMA 重新映射支持,驱动程序还必须相应地填写 DXGK_PHYSICAL_MEMORY_CAPS

有关详细信息,请参阅 IOMMU DMA 重新映射

要求

要求
最低受支持的服务器 Windows Server 2022
标头 d3dkmddi.h

另请参阅

DXGK_PHYSICAL_MEMORY_CAPS

DXGK_QUERYADAPTERINFOTYPE

DXGK_VIDMMCAPS

DxgkddiAddDevice

DxgkDdiQueryAdapterInfo

DxgkddiStartDevice