Función SerCx2SystemDmaTransmitPurgeFifoComplete (sercx.h)
El método SerCx2SystemDmaTransmitPurgeFifoComplete notifica a la versión 2 de la extensión del marco serie (SerCx2) que el controlador del controlador de serie ha terminado de purgar los datos de la transmisión fiFO en el hardware del controlador serie.
Sintaxis
void SerCx2SystemDmaTransmitPurgeFifoComplete(
[in] SERCX2SYSTEMDMATRANSMIT SystemDmaTransmit,
[in] ULONG BytesPurged
);
Parámetros
[in] SystemDmaTransmit
Identificador de SERCX2SYSTEMDMATRANSMIT a un objeto system-DMA-transmit. Anteriormente, el controlador de controlador serie llamó al método SerCx2SystemDmaTransmitCreate para crear este objeto.
[in] BytesPurged
Número de bytes de datos sin enviar que el controlador del controlador serie purgó de la transmisión FIFO.
Valor devuelto
Ninguno
Observaciones
SerCx2 llama a la EvtSerCx2SystemDmaTransmitPurgeFifo función de devolución de llamada de eventos, si se implementa, para indicar al controlador del controlador de serie que finalice la transacción actual system-DMA-transmit. SerCx2 inició previamente esta transacción en respuesta a una solicitud de escritura (IRP_MJ_WRITE) de un cliente. Por ejemplo, SerCx2 podría llamar a esta función si el cliente cancela la solicitud de escritura pendiente o si la solicitud de escritura agota el tiempo de espera. Para obtener más información, vea control de SerCx2 de solicitudes de lectura y escritura.
En respuesta a la llamada evtSerCx2SystemDmaTransmitPurgeFifo, el controlador detiene la transferencia de datos del búfer de escritura al FIFO de transmisión y descarta los datos transferidos previamente que permanecen en la transmisión FIFO. Una vez finalizada la purga, el controlador de controlador serie debe llamar a SerCx2SystemDmaTransmitPurgeFifoComplete para notificar a SerCx2. SerCx2 espera esta notificación y no completa la solicitud de escritura hasta que se le notifique.
El controlador de controlador serie debe llamar a SerCx2SystemDmaTransmitPurgeFifoComplete solo en respuesta a una llamada a la función EvtSerCx2SystemDmaTransmitPurgeFifo.
SerCx2 usa el valor de parámetro de BytesPurged para determinar cuántos bytes se transmitieron correctamente antes de purgar fiFO de transmisión. SerCx2 requiere que esta información complete una solicitud de escritura que agote el tiempo de espera o una solicitud de escritura que se cancele después de que se transmitan uno o varios bytes.
Para obtener más información, vea SerCx2 System-DMA-Transmit Transactions.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8.1. |
de la plataforma de destino de |
Universal |
encabezado de |
sercx.h |
irQL | <= DISPATCH_LEVEL |