Freigeben über


DMA_IOMMU_INTERFACE_V2 Struktur (wdm.h)

Eine Struktur, die den Satz von IOMMU Version 2 (V2)-Funktionen enthält.

Syntax

typedef struct _DMA_IOMMU_INTERFACE_V2 {
  PIOMMU_DOMAIN_CREATE_EX                           CreateDomainEx;
  PIOMMU_DOMAIN_DELETE                              DeleteDomain;
  PIOMMU_DOMAIN_ATTACH_DEVICE_EX                    AttachDeviceEx;
  PIOMMU_DOMAIN_DETACH_DEVICE_EX                    DetachDeviceEx;
  PIOMMU_FLUSH_DOMAIN                               FlushDomain;
  PIOMMU_FLUSH_DOMAIN_VA_LIST                       FlushDomainByVaList;
  PIOMMU_QUERY_INPUT_MAPPINGS                       QueryInputMappings;
  PIOMMU_MAP_LOGICAL_RANGE_EX                       MapLogicalRangeEx;
  PIOMMU_UNMAP_LOGICAL_RANGE                        UnmapLogicalRange;
  PIOMMU_MAP_IDENTITY_RANGE_EX                      MapIdentityRangeEx;
  PIOMMU_UNMAP_IDENTITY_RANGE_EX                    UnmapIdentityRangeEx;
  PIOMMU_SET_DEVICE_FAULT_REPORTING_EX              SetDeviceFaultReportingEx;
  PIOMMU_DOMAIN_CONFIGURE                           ConfigureDomain;
  PIOMMU_DEVICE_QUERY_DOMAIN_TYPES                  QueryAvailableDomainTypes;
  PIOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK   RegisterInterfaceStateChangeCallback;
  PIOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK UnregisterInterfaceStateChangeCallback;
  PIOMMU_RESERVE_LOGICAL_ADDRESS_RANGE              ReserveLogicalAddressRange;
  PIOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE        FreeReservedLogicalAddressRange;
  PIOMMU_MAP_RESERVED_LOGICAL_RANGE                 MapReservedLogicalRange;
  PIOMMU_UNMAP_RESERVED_LOGICAL_RANGE               UnmapReservedLogicalRange;
  PIOMMU_DEVICE_CREATE                              CreateDevice;
  PIOMMU_DEVICE_DELETE                              DeleteDevice;
} DMA_IOMMU_INTERFACE_V2, *PDMA_IOMMU_INTERFACE_V2;

Angehörige

CreateDomainEx

Ein Zeiger auf die IOMMU_DOMAIN_CREATE_EX-Funktion, die eine DMA-Neuzuordnungsgerätedomäne erstellt.

DeleteDomain

Ein Zeiger auf die IOMMU_DOMAIN_DELETE-Funktion, die eine Gerätedomäne löscht.

AttachDeviceEx

Ein Zeiger auf die IOMMU_DOMAIN_ATTACH_DEVICE_EX-Funktion, die ein Gerät an eine Domäne anfügt.

DetachDeviceEx

Ein Zeiger auf die IOMMU_DOMAIN_DETACH_DEVICE_EX-Funktion, die ein Gerät von einer Domäne trennt.

FlushDomain

Ein Zeiger auf die IOMMU_FLUSH_DOMAIN-Funktion, die die TLB für alle Einträge löscht, die dieser Domäne entsprechen.

FlushDomainByVaList

Ein Zeiger auf die IOMMU_FLUSH_DOMAIN_VA_LIST-Funktion, die die TLB für alle Einträge löscht, die mit der ASID der angegebenen Domäne und einer der Adressen in der angegebenen Liste übereinstimmen.

QueryInputMappings

Ein Zeiger auf die IOMMU_QUERY_INPUT_MAPPINGS-Funktion, die versucht, Eingabezuordnungs-IDs zu finden, die für das angegebene Gerät gültig sind, und den bereitgestellten Puffer mit diesen IDs auffüllen.

MapLogicalRangeEx

Ein Zeiger auf die IOMMU_MAP_LOGICAL_RANGE_EX-Funktion, die einen Seitenbereich dem Adressraum der angegebenen Domäne zuordnet.

UnmapLogicalRange

Ein Zeiger auf die IOMMU_UNMAP_LOGICAL_RANGE-Funktion, die die Zuordnung eines Seitenbereichs aufzuheben.

MapIdentityRangeEx

Ein Zeiger auf die IOMMU_MAP_IDENTITY_RANGE_EX-Funktion, die eine Identitätszuordnung für die angegebene physische Adresse in der angegebenen Domäne erstellt.

UnmapIdentityRangeEx

Ein Zeiger auf die IOMMU_UNMAP_IDENTITY_RANGE_EX-Funktion, die eine Identitätszuordnung für die angegebene physische Adresse löscht.

SetDeviceFaultReportingEx

Ein Zeiger auf die IOMMU_SET_DEVICE_FAULT_REPORTING_EX-Funktion, die den Zustand der Gerätefehlerberichterstattung auf einem Gerät festlegt, das bereits an eine Domäne angefügt ist.

ConfigureDomain

Ein Zeiger auf die IOMMU_DOMAIN_CONFIGURE-Funktion, die eine Domäne für die Verwendung konfiguriert.

QueryAvailableDomainTypes

Ein Zeiger auf die IOMMU_DEVICE_QUERY_DOMAIN_TYPES-Funktion, die die verfügbaren Domänentypen abfragt, an die ein Gerät je nach Umgebungsfaktoren wie Plattform und DMA Guard-Richtlinie anfügen darf.

RegisterInterfaceStateChangeCallback

Ein Zeiger auf die IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK-Funktion, mit der der Aufrufer einen Rückruf registrieren kann, der aufgerufen werden kann, wenn statusänderungen im Zusammenhang mit der IOMMU-Schnittstelle auftreten.

UnregisterInterfaceStateChangeCallback

Ein Zeiger auf die IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK-Funktion, mit der der Aufrufer die Registrierung eines registrierten Rückrufs aufheben kann.

ReserveLogicalAddressRange

Ein Zeiger auf die IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE-Funktion, die den logischen Adressraum vorschreibt, der für zukünftige Zuordnungen verwendet werden kann.

FreeReservedLogicalAddressRange

Ein Zeiger auf die IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE-Funktion, die ein logisches Adresstoken freigibt.

MapReservedLogicalRange

Ein Zeiger auf die IOMMU_MAP_RESERVED_LOGICAL_RANGE-Funktion, die einen reservierten logischen Bereich zuordnet.

UnmapReservedLogicalRange

Ein Zeiger auf die IOMMU_UNMAP_RESERVED_LOGICAL_RANGE-Funktion, die die Zuordnung eines zuvor zugeordneten reservierten logischen Bereichs aufzuheben.

CreateDevice

Ein Zeiger auf die IOMMU_DEVICE_CREATE-Funktion, die ein physisches Geräteobjekt verwendet und eine IOMMU_DMA_DEVICEerstellt.

DeleteDevice

Ein Zeiger auf die IOMMU_DEVICE_DELETE-Funktion, die eine IOMMU_DMA_DEVICElöscht.

Anforderungen

Anforderung Wert
mindestens unterstützte Server- Windows Server 2022
Header- wdm.h (include Wdm.h)

Siehe auch

DMA_IOMMU_INTERFACE_EX