estructura DMA_IOMMU_INTERFACE (wdm.h)

Una versión extendida de la estructura INTERFACE que permite a los controladores de dispositivo invocar las funciones de devolución de llamada que realizan operaciones de dominio de dispositivo.

Precaución

DMA_IOMMU_INTERFACEha quedado en desuso en Windows 10, versión 2103 y se ha reemplazado por DMA_IOMMU_INTERFACE_EX.

Sintaxis

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;

Miembros

Version

Versión de la interfaz definida por el controlador.

CreateDomain

Puntero a la función de devolución de llamada IOMMU_DOMAIN_CREATE que crea un dominio de dispositivo de reasignación de DMA.

DeleteDomain

Puntero a la función de devolución de llamada IOMMU_DOMAIN_DELETE que elimina un dominio de dispositivo.

AttachDevice

Puntero a la función de devolución de llamada IOMMU_DOMAIN_ATTACH_DEVICE que conecta un dispositivo a un dominio.

DetachDevice

Puntero a la función de devolución de llamada IOMMU_DOMAIN_DETACH_DEVICE que separa un dispositivo de un dominio.

FlushDomain

Puntero a la función de devolución de llamada IOMMU_FLUSH_DOMAIN que vacía el TLB para todas las entradas que coinciden con este dominio.

FlushDomainByVaList

Puntero a la función de devolución de llamada IOMMU_FLUSH_DOMAIN_VA_LIST que vacía el TLB para todas las entradas que coinciden con el ASID del dominio especificado y una de las direcciones de la lista proporcionada.

QueryInputMappings

Puntero a la función de devolución de llamada IOMMU_QUERY_INPUT_MAPPINGS que intenta buscar identificadores de asignación de entrada válidos para el dispositivo determinado y rellenar el búfer proporcionado con esos identificadores.

MapLogicalRange

Puntero a la función de devolución de llamada IOMMU_MAP_LOGICAL_RANGE que asigna un intervalo de páginas al espacio de direcciones del dominio especificado.

UnmapLogicalRange

Puntero a la función de devolución de llamada IOMMU_UNMAP_LOGICAL_RANGE que desasignación de un intervalo de páginas.

MapIdentityRange

Puntero a la función de devolución de llamada IOMMU_MAP_IDENTITY_RANGE que crea una asignación de identidad para el MDL proporcionado en el dominio especificado.

UnmapIdentityRange

Puntero a la función de devolución de llamada IOMMU_UNMAP_IDENTITY_RANGE que elimina una asignación de identidad.

SetDeviceFaultReporting

Puntero a la función de devolución de llamada IOMMU_SET_DEVICE_FAULT_REPORTING que establece el estado de notificación de errores del dispositivo en el dispositivo ya conectado a un dominio.

ConfigureDomain

Puntero a la función de devolución de llamada IOMMU_DOMAIN_CONFIGURE que configura un dominio para su uso.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 1803
Encabezado wdm.h