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.IOMMUSecureModeSupported. Dxgkrnl 에는 이러한 기능이 일치해야 합니다.

IommuIsolationRequired

하드웨어가 올바르고 안전하게 작동하려면 IOMMU가 필요했음을 나타냅니다. IOMMU가 시스템에 없거나 도메인을 디바이스에 연결할 수 없는 경우 디바이스가 시작되지 않습니다. 이 필드는 DXGK_DRIVERCAPS 모방합니다 . MemoryManagementCaps.IOMMUSecureModeRequired. Dxgkrnl 에는 이러한 기능이 일치해야 합니다.

DmaRemappingSupported

표준 격리에 사용되는 1:1 매핑뿐만 아니라 드라이버에서 선형 다시 매핑이 지원됨을 나타냅니다. 연결된 여러 실제 어댑터의 가장 높은 표시 주소 값이 다른 경우 드라이버는 모든 실제 어댑터의 최소값을 보고해야 합니다.

Reserved

예약됨; 은 사용하지 않습니다.

Value

비트에 액세스하는 대체 메서드입니다.

설명

Dxgkrnl이 DXGK_QUERYADAPTERINFOTYPE 값이 DXGKQAITYPE_IOMMU_CAPSDxgkDdiQueryAdapterInfo를 호출하면 드라이버가 이 구조를 채웁니다. DxgkddiAddDevice가 모든 실제 어댑터에 대해 호출된 후 DxgkDdiQueryAdapterInfo를 호출하지만 DxgkddiStartDevice 이전에는 DxgkddiStartDevice를 호출합니다. 드라이버는 현재 연결된 모든 실제 어댑터에 대해 알아야 합니다.

논리적 DMA 다시 매핑 지원을 나타내려면 드라이버도 그에 따라 DXGK_PHYSICAL_MEMORY_CAPS 채워야 합니다.

자세한 내용은 IOMMU DMA 다시 매핑을 참조하세요.

요구 사항

   
지원되는 최소 서버 Windows Server 2022
헤더 d3dkmddi.h

참고 항목

DXGK_PHYSICAL_MEMORY_CAPS

DXGK_QUERYADAPTERINFOTYPE

DXGK_VIDMMCAPS

DxgkddiAddDevice

DxgkDdiQueryAdapterInfo

DxgkddiStartDevice