Método IDmaChannel::AllocateBuffer (portcls.h)

El método AllocateBuffer asigna un búfer común al que puede acceder el controlador de puerto y el hardware DMA.

Sintaxis

NTSTATUS AllocateBuffer(
  ULONG             BufferSize,
  PPHYSICAL_ADDRESS PhysicalAddressConstraint
);

Parámetros

BufferSize

Especifica el tamaño en bytes del búfer que se va a asignar.

PhysicalAddressConstraint

Especifica una restricción opcional que se va a colocar en la dirección física del búfer. Si este parámetro no es NULL, solo los bits establecidos en la dirección de restricción variarán desde el principio hasta el final del búfer. Por ejemplo, para solicitar un búfer que no cruza un límite de 64 kilobytes, especifique la restricción de dirección física 0x000000000000FFFF.

Valor devuelto

Este método devuelve NTSTATUS. AllocateBuffer devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, el método devuelve un código de error adecuado.

Observaciones

Solo se debe llamar a este método una vez después de la creación del objeto de canal DMA, a menos que el búfer asignado anteriormente se libere llamando a FreeBuffer.

Requisitos

   
Header portcls.h
IRQL PASSIVE_LEVEL

Vea también

IDmaChannel