次の方法で共有


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.IOMMUSecureModeSupported. Dxgkrnl は、これらの機能が一致することを想定しています。

IommuIsolationRequired

ハードウェアが正しく安全に機能するために IOMMU が必要であることを示します。 IOMMU がシステムに存在しない場合、またはドメインをデバイスに接続できない場合、デバイスは起動しません。 このフィールドは DXGK_DRIVERCAPS を模倣します。MemoryManagementCaps.IOMMUSecureModeRequired. Dxgkrnl は、これらの機能が一致することを想定しています。

DmaRemappingSupported

標準の分離に使用される 1 対 1 のマッピングだけでなく、ドライバーによって線形再マッピングがサポートされていることを示します。 複数のリンクされた物理アダプターが、最も高い表示アドレスに対して異なる値を持つ場合、ドライバーはすべての物理アダプターの最小値を報告する必要があります。

GpuVaIommuRequired

GpuVaIommuGlobalRequired

Reserved

引っ込み思案;使用しないでください。

Value

ビットにアクセスするための別の方法。

備考

ドライバーは、dxgkrnl DXGKQAITYPE_IOMMU_CAPSDXGK_QUERYADAPTERINFOTYPEDxgkDdiQueryAdapterInfo を呼び出すときに、この構造体を埋めます。 dxgkrnl は、DxgkddiAddDeviceがすべての物理アダプター呼び出された後、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