struttura DMA_IOMMU_INTERFACE_V2 (wdm.h)

Struttura contenente il set di funzioni IOMMU Versione 2 (V2).

Sintassi

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;

Members

CreateDomainEx

Puntatore alla funzione IOMMU_DOMAIN_CREATE_EX che crea un dominio del dispositivo DMA remapping.

DeleteDomain

Puntatore alla funzione IOMMU_DOMAIN_DELETE che elimina un dominio del dispositivo.

AttachDeviceEx

Puntatore alla funzione IOMMU_DOMAIN_ATTACH_DEVICE_EX che collega un dispositivo a un dominio.

DetachDeviceEx

Puntatore alla funzione IOMMU_DOMAIN_DETACH_DEVICE_EX che scollega un dispositivo da un dominio.

FlushDomain

Puntatore alla funzione IOMMU_FLUSH_DOMAIN che scarica il TLB per tutte le voci che corrispondono a questo dominio.

FlushDomainByVaList

Puntatore alla funzione IOMMU_FLUSH_DOMAIN_VA_LIST che scarica il TLB per tutte le voci corrispondenti all'ASID del dominio specificato e a uno degli indirizzi nell'elenco specificato.

QueryInputMappings

Puntatore alla funzione IOMMU_QUERY_INPUT_MAPPINGS che tenta di trovare ID mapping di input validi per il dispositivo specificato e popolare il buffer fornito con tali ID.

MapLogicalRangeEx

Puntatore alla funzione IOMMU_MAP_LOGICAL_RANGE_EX che esegue il mapping di un intervallo di pagine nello spazio indirizzi del dominio specificato.

UnmapLogicalRange

Puntatore alla funzione IOMMU_UNMAP_LOGICAL_RANGE che annulla il mapping di un intervallo di pagine.

MapIdentityRangeEx

Puntatore alla funzione IOMMU_MAP_IDENTITY_RANGE_EX che crea un mapping di identità per l'indirizzo fisico specificato nel dominio specificato.

UnmapIdentityRangeEx

Puntatore alla funzione IOMMU_UNMAP_IDENTITY_RANGE_EX che elimina un mapping di identità per l'indirizzo fisico specificato.

SetDeviceFaultReportingEx

Puntatore alla funzione IOMMU_SET_DEVICE_FAULT_REPORTING_EX che imposta lo stato di segnalazione degli errori del dispositivo in un dispositivo già collegato a un dominio.

ConfigureDomain

Puntatore alla funzione IOMMU_DOMAIN_CONFIGURE che configura un dominio da usare.

QueryAvailableDomainTypes

Puntatore alla funzione IOMMU_DEVICE_QUERY_DOMAIN_TYPES che esegue query sui tipi di domini disponibili a cui un dispositivo può connettersi, a seconda dei fattori di ambiente, ad esempio la piattaforma e i criteri di DMA Guard.

RegisterInterfaceStateChangeCallback

Puntatore alla funzione IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK che consente al chiamante di registrare un callback da richiamare ogni volta che si verifica una modifica dello stato correlata all'interfaccia IOMMU.

UnregisterInterfaceStateChangeCallback

Puntatore alla funzione IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK che consente al chiamante di annullare la registrazione di un callback registrato.

ReserveLogicalAddressRange

Puntatore alla funzione IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE che prealloca lo spazio degli indirizzi logici che può essere usato per i mapping futuri.

FreeReservedLogicalAddressRange

Puntatore alla funzione IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE che libera un token di indirizzo logico.

MapReservedLogicalRange

Puntatore alla funzione IOMMU_MAP_RESERVED_LOGICAL_RANGE che esegue il mapping di un intervallo logico riservato.

UnmapReservedLogicalRange

Puntatore alla funzione IOMMU_UNMAP_RESERVED_LOGICAL_RANGE che annulla il mapping di un intervallo logico riservato mappato in precedenza.

CreateDevice

Puntatore alla funzione IOMMU_DEVICE_CREATE che accetta un oggetto dispositivo fisico e crea un IOMMU_DMA_DEVICE.

DeleteDevice

Puntatore alla funzione IOMMU_DEVICE_DELETE che elimina un IOMMU_DMA_DEVICE.

Requisiti

Requisito Valore
Server minimo supportato Windows Server 2022
Intestazione wdm.h (include Wdm.h)

Vedi anche

DMA_IOMMU_INTERFACE_EX