PFREE_MAP_REGISTERS función de devolución de llamada (wdm.h)
El FreeMapRegisters rutina libera un conjunto de registros de mapa que se guardaron desde una llamada a AllocateAdapterChannel.
Sintaxis
PFREE_MAP_REGISTERS PfreeMapRegisters;
void PfreeMapRegisters(
[in] PDMA_ADAPTER DmaAdapter,
[in] PVOID MapRegisterBase,
[in] ULONG NumberOfMapRegisters
)
{...}
Parámetros
[in] DmaAdapter
Puntero a la estructura DMA_ADAPTER devuelta por ioGetDmaAdapter que representa el adaptador de bus-master o el controlador DMA.
[in] MapRegisterBase
Especifica los registros de asignación asignados para la operación DMA. El sistema pasa este valor a la rutina de AdapterControl del controlador.
[in] NumberOfMapRegisters
Especifica el número de registros de mapa que se van a liberar. Este valor debe coincidir con el número especificado en una llamada anterior a AllocateAdapterChannel.
Valor devuelto
Ninguno
Observaciones
FreeMapRegisters no es una rutina del sistema a la que se puede llamar directamente por su nombre. Esta rutina solo es invocable por puntero desde la dirección devuelta en una estructura de DMA_OPERATIONS. Los controladores obtienen la dirección de esta rutina llamando a IoGetDmaAdapter.
Cuando el controlador de un dispositivo maestro de bus ha completado la solicitud de transferencia DMA basada en paquetes actual, llama a FreeMapRegisters para liberar los registros de mapa asignados previamente por una llamada a AllocateAdapterChannel y se conserva porque su rutina AdapterControl devuelve DeallocateObjectKeepRegisters. El controlador debe llamar a FreeMapRegisters después de llamar a FlushAdapterBuffers.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 2000. |
de la plataforma de destino de | Escritorio |
encabezado de | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
irQL | DISPATCH_LEVEL |
reglas de cumplimiento de DDI | IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |