次の方法で共有


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

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

注釈

ドライバーは、 DxgkrnlDxgkDdiQueryAdapterInfo を DXGKQAITYPE_IOMMU_CAPS の DXGK_QUERYADAPTERINFOTYPE 値で呼び出すときに、この構造体 入力します。 Dxgkrnl は、DxgkddiAddDevice がすべての物理アダプターに対して呼び出された後、DxgkddiStartDevice より前に DxgkDdiQueryAdapterInfo を呼び出します。 ドライバーは、現時点ですべてのリンクされた物理アダプターについて認識している必要があります。

DMA の論理的な再マップのサポートを示すには、ドライバーもそれに応じて DXGK_PHYSICAL_MEMORY_CAPS を入力する必要があります。

詳細については、「 IOMMU DMA 再マップ」を参照してください。

要件

要件
サポートされている最小のサーバー Windows Server 2022
Header d3dkmddi.h

こちらもご覧ください

DXGK_PHYSICAL_MEMORY_CAPS

DXGK_QUERYADAPTERINFOTYPE

DXGK_VIDMMCAPS

DxgkddiAddDevice

DxgkDdiQueryAdapterInfo

DxgkddiStartDevice