estructura DMA_IOMMU_INTERFACE_V2 (wdm.h)
Estructura que contiene el conjunto de funciones iomMU versión 2 (V2).
Sintaxis
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;
Miembros
CreateDomainEx
Puntero a la función IOMMU_DOMAIN_CREATE_EX que crea un dominio de dispositivo de reasignación de DMA.
DeleteDomain
Puntero a la función IOMMU_DOMAIN_DELETE que elimina un dominio de dispositivo.
AttachDeviceEx
Puntero a la función IOMMU_DOMAIN_ATTACH_DEVICE_EX que asocia un dispositivo a un dominio.
DetachDeviceEx
Puntero a la función IOMMU_DOMAIN_DETACH_DEVICE_EX que desasocia un dispositivo de un dominio.
FlushDomain
Puntero a la función IOMMU_FLUSH_DOMAIN que vacía el TLB para todas las entradas que coinciden con este dominio.
FlushDomainByVaList
Puntero a la función 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 IOMMU_QUERY_INPUT_MAPPINGS que intenta buscar identificadores de asignación de entrada que son válidos para el dispositivo dado y rellenar el búfer proporcionado con esos identificadores.
MapLogicalRangeEx
Puntero a la función IOMMU_MAP_LOGICAL_RANGE_EX que asigna un intervalo de páginas al espacio de direcciones del dominio especificado.
UnmapLogicalRange
Puntero a la función IOMMU_UNMAP_LOGICAL_RANGE que desasignación de un intervalo de páginas.
MapIdentityRangeEx
Puntero a la función IOMMU_MAP_IDENTITY_RANGE_EX que crea una asignación de identidad para la dirección física proporcionada en el dominio proporcionado.
UnmapIdentityRangeEx
Puntero a la función IOMMU_UNMAP_IDENTITY_RANGE_EX que elimina una asignación de identidad para la dirección física especificada.
SetDeviceFaultReportingEx
Puntero a la función IOMMU_SET_DEVICE_FAULT_REPORTING_EX que establece el estado de notificación de errores del dispositivo en un dispositivo ya conectado a un dominio.
ConfigureDomain
Puntero a la función IOMMU_DOMAIN_CONFIGURE que configura un dominio para su uso.
QueryAvailableDomainTypes
Puntero a la función IOMMU_DEVICE_QUERY_DOMAIN_TYPES que consulta los tipos de dominios disponibles a los que un dispositivo puede asociar, en función de los factores de entorno, como la plataforma y la directiva DMA Guard.
RegisterInterfaceStateChangeCallback
Puntero a la función IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK que permite al autor de la llamada registrar una devolución de llamada que se invocará cada vez que se produzca cualquier cambio de estado relacionado con la interfaz IOMMU.
UnregisterInterfaceStateChangeCallback
Puntero a la función IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK que permite al autor de la llamada anular el registro de una devolución de llamada registrada.
ReserveLogicalAddressRange
Puntero a la función IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE que asigna previamente el espacio de direcciones lógicos que se puede usar para futuras asignaciones.
FreeReservedLogicalAddressRange
Puntero a la función IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE que libera un token de dirección lógica.
MapReservedLogicalRange
Puntero a la función IOMMU_MAP_RESERVED_LOGICAL_RANGE que asigna un intervalo lógico reservado.
UnmapReservedLogicalRange
Puntero a la función IOMMU_UNMAP_RESERVED_LOGICAL_RANGE que desasigna un intervalo lógico reservado asignado previamente.
CreateDevice
Puntero a la función IOMMU_DEVICE_CREATE que toma un objeto de dispositivo físico y crea un IOMMU_DMA_DEVICE.
DeleteDevice
Puntero a la función IOMMU_DEVICE_DELETE que elimina un IOMMU_DMA_DEVICE.
Requisitos
Requisito | Valor |
---|---|
servidor mínimo admitido | Windows Server 2022 |
encabezado de | wdm.h (incluya Wdm.h) |