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_CAPSの DXGK_QUERYADAPTERINFOTYPE 値 DxgkDdiQueryAdapterInfo を呼び出すときに、この構造体を埋めます。 dxgkrnl は、DxgkddiAddDeviceがすべての物理アダプター呼び出された後、DxgkddiStartDeviceする前に、DxgkDdiQueryAdapterInfo を呼び出します。 現時点では、ドライバーは、リンクされているすべての物理アダプターについて認識している必要があります。
DMA の論理的な再マッピングのサポートを示すには、ドライバーもそれに応じて DXGK_PHYSICAL_MEMORY_CAPS を入力する必要があります。
詳細については、IOMMU DMA の再マップを参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小サーバー | Windows Server 2022 |
ヘッダー | d3dkmddi.h |
関連項目
DxgkddiAddDeviceの
DxgkDdiQueryAdapterInfoの
DxgkddiStartDeviceの