estrutura DMA_IOMMU_INTERFACE (wdm.h)
Uma versão estendida da estrutura INTERFACE que permite que os drivers de dispositivo invoquem as funções de retorno de chamada que executam operações de domínio do dispositivo.
Cuidado
DMA_IOMMU_INTERFACE
foi preterido em Windows 10, versão 2103 e foi substituído por DMA_IOMMU_INTERFACE_EX.
Sintaxe
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;
Membros
Version
A versão da interface definida pelo driver.
CreateDomain
Um ponteiro para a função de retorno de chamada IOMMU_DOMAIN_CREATE que cria um domínio de dispositivo de remapeamento de DMA.
DeleteDomain
Um ponteiro para a função de retorno de chamada IOMMU_DOMAIN_DELETE que exclui um domínio do dispositivo.
AttachDevice
Um ponteiro para a função de retorno de chamada IOMMU_DOMAIN_ATTACH_DEVICE que anexa um dispositivo a um domínio.
DetachDevice
Um ponteiro para a função de retorno de chamada IOMMU_DOMAIN_DETACH_DEVICE que desanexa um dispositivo de um domínio.
FlushDomain
Um ponteiro para a função de retorno de chamada IOMMU_FLUSH_DOMAIN que libera o TLB para todas as entradas que correspondem a esse domínio.
FlushDomainByVaList
Um ponteiro para o IOMMU_FLUSH_DOMAIN_VA_LIST função de retorno de chamada que libera o TLB para todas as entradas que correspondem ao ASID do domínio especificado e um dos endereços na lista fornecida.
QueryInputMappings
Um ponteiro para o IOMMU_QUERY_INPUT_MAPPINGS função de retorno de chamada que tenta localizar IDs de mapeamento de entrada que são válidas para o dispositivo especificado e preenchem o buffer fornecido com essas IDs.
MapLogicalRange
Um ponteiro para a função de retorno de chamada IOMMU_MAP_LOGICAL_RANGE que mapeia um intervalo de páginas para o espaço de endereço do domínio especificado.
UnmapLogicalRange
Um ponteiro para o IOMMU_UNMAP_LOGICAL_RANGE função de retorno de chamada que cancela omaps de um intervalo de páginas.
MapIdentityRange
Um ponteiro para a função de retorno de chamada IOMMU_MAP_IDENTITY_RANGE que cria um mapeamento de identidade para o MDL fornecido no domínio especificado.
UnmapIdentityRange
Um ponteiro para a função de retorno de chamada IOMMU_UNMAP_IDENTITY_RANGE que exclui um mapeamento de identidade.
SetDeviceFaultReporting
Um ponteiro para a função de retorno de chamada IOMMU_SET_DEVICE_FAULT_REPORTING que define o estado de relatório de falha do dispositivo para o dispositivo já anexado a um domínio.
ConfigureDomain
Um ponteiro para a função de retorno de chamada IOMMU_DOMAIN_CONFIGURE que configura um domínio para uso.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1803 |
Cabeçalho | wdm.h |