共用方式為


DMA_IOMMU_INTERFACE結構 (wdm.h)

介面結構的擴充版本,可讓設備驅動器叫用執行裝置網域作業的回呼函式。

警告

DMA_IOMMU_INTERFACE在 Windows 10 2103 版中已被取代,且已由 DMA_IOMMU_INTERFACE_EX 取代。

語法

typedef struct _DMA_IOMMU_INTERFACE {
  ULONG                             Version;
  PIOMMU_DOMAIN_CREATE              CreateDomain;
  PIOMMU_DOMAIN_DELETE              DeleteDomain;
  PIOMMU_DOMAIN_ATTACH_DEVICE       AttachDevice;
  PIOMMU_DOMAIN_DETACH_DEVICE       DetachDevice;
  PIOMMU_FLUSH_DOMAIN               FlushDomain;
  PIOMMU_FLUSH_DOMAIN_VA_LIST       FlushDomainByVaList;
  PIOMMU_QUERY_INPUT_MAPPINGS       QueryInputMappings;
  PIOMMU_MAP_LOGICAL_RANGE          MapLogicalRange;
  PIOMMU_UNMAP_LOGICAL_RANGE        UnmapLogicalRange;
  PIOMMU_MAP_IDENTITY_RANGE         MapIdentityRange;
  PIOMMU_UNMAP_IDENTITY_RANGE       UnmapIdentityRange;
  PIOMMU_SET_DEVICE_FAULT_REPORTING SetDeviceFaultReporting;
  PIOMMU_DOMAIN_CONFIGURE           ConfigureDomain;
} DMA_IOMMU_INTERFACE, *PDMA_IOMMU_INTERFACE;

成員

Version

驅動程式定義的介面版本。

CreateDomain

IOMMU_DOMAIN_CREATE回呼函式的指標,可建立 DMA 重新對應裝置網域。

DeleteDomain

刪除裝置網域 之IOMMU_DOMAIN_DELETE 回呼函式的指標。

AttachDevice

將裝置連結至網域 之IOMMU_DOMAIN_ATTACH_DEVICE 回呼函式的指標。

DetachDevice

卸離裝置與網域 IOMMU_DOMAIN_DETACH_DEVICE 回呼函式的指標。

FlushDomain

IOMMU_FLUSH_DOMAIN回呼函式的指標,會排清符合此定義域之所有專案的 TLB。

FlushDomainByVaList

IOMMU_FLUSH_DOMAIN_VA_LIST回呼函式的指標,針對符合指定網域的 ASID 和所提供清單中的其中一個位址的所有專案排清 TLB。

QueryInputMappings

IOMMU_QUERY_INPUT_MAPPINGS回呼函式的指標,它會嘗試尋找對指定裝置有效的輸入對應標識碼,並使用這些標識碼填入提供的緩衝區。

MapLogicalRange

IOMMU_MAP_LOGICAL_RANGE回呼函式的指標,會將頁面範圍對應至指定網域的位址空間。

UnmapLogicalRange

IOMMU_UNMAP_LOGICAL_RANGE回呼函式的指標,會取消對應頁面範圍。

MapIdentityRange

IOMMU_MAP_IDENTITY_RANGE回呼函式的指標,會為指定網域中提供的 MDL 建立識別對應。

UnmapIdentityRange

刪除識別對應的 IOMMU_UNMAP_IDENTITY_RANGE 回呼函式指標。

SetDeviceFaultReporting

IOMMU_SET_DEVICE_FAULT_REPORTING回呼函式的指標,會將裝置錯誤報告狀態設定為已連結至網域的裝置。

ConfigureDomain

設定網域以供使用 之IOMMU_DOMAIN_CONFIGURE 回呼函式的指標。

規格需求

需求
最低支援的用戶端 Windows 10 (版本 1803)
標頭 wdm.h