PFREE_MAP_REGISTERS función de devolución de llamada (wdm.h)

La rutina FreeMapRegisters 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 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

None

Observaciones

FreeMapRegisters no es una rutina del sistema a la que se puede llamar directamente por nombre. Esta rutina solo es invocable por puntero de la dirección devuelta en una estructura de DMA_OPERATIONS . Los controladores obtienen la dirección de esta rutina mediante una llamada a IoGetDmaAdapter.

Cuando el controlador de un dispositivo bus-master 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 retenido porque su rutina AdapterControl devolvió DeallocateObjectKeepRegisters. El controlador debe llamar a FreeMapRegisters después de llamar a FlushAdapterBuffers.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Escritorio
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
IRQL DISPATCH_LEVEL
Reglas de cumplimiento de DDI IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm)

Consulte también

AllocateAdapterChannel

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter

MapTransfer