PFREE_MAP_REGISTERS função de retorno de chamada (wdm.h)
A rotina FreeMapRegisters libera um conjunto de registros de mapa que foram salvos de uma chamada para AllocateAdapterChannel.
Sintaxe
PFREE_MAP_REGISTERS PfreeMapRegisters;
void PfreeMapRegisters(
[in] PDMA_ADAPTER DmaAdapter,
[in] PVOID MapRegisterBase,
[in] ULONG NumberOfMapRegisters
)
{...}
Parâmetros
[in] DmaAdapter
Ponteiro para a estrutura DMA_ADAPTER retornada por IoGetDmaAdapter que representa o adaptador de master de barramento ou o controlador de DMA.
[in] MapRegisterBase
Especifica os registros de mapa alocados para a operação de DMA. O sistema passa esse valor para a rotina AdapterControl do driver.
[in] NumberOfMapRegisters
Especifica o número de registros de mapa a serem liberados. Esse valor deve corresponder ao número especificado em uma chamada anterior para AllocateAdapterChannel.
Retornar valor
Nenhum
Comentários
FreeMapRegisters não é uma rotina do sistema que pode ser chamada diretamente pelo nome. Essa rotina só pode ser chamada por ponteiro do endereço retornado em uma estrutura DMA_OPERATIONS . Os drivers obtêm o endereço dessa rotina chamando IoGetDmaAdapter.
Quando o driver de um dispositivo master de ônibus tiver concluído a solicitação de transferência DMA baseada em pacote atual, ele chamará FreeMapRegisters para liberar os registros de mapa alocados anteriormente por uma chamada para AllocateAdapterChannel e retidos porque sua rotina AdapterControl retornou DeallocateObjectKeepRegisters. O driver deve chamar FreeMapRegisters depois de chamar FlushAdapterBuffers.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | DISPATCH_LEVEL |
Regras de conformidade de DDI | IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |