Função SerCx2SystemDmaTransmitPurgeFifoComplete (sercx.h)
O método SerCx2SystemDmaTransmitPurgeFifoComplete notifica a versão 2 da extensão da estrutura serial (SerCx2) de que o driver do controlador serial concluiu a limpeza dos dados do FIFO de transmissão no hardware do controlador serial.
Sintaxe
void SerCx2SystemDmaTransmitPurgeFifoComplete(
[in] SERCX2SYSTEMDMATRANSMIT SystemDmaTransmit,
[in] ULONG BytesPurged
);
Parâmetros
[in] SystemDmaTransmit
Um identificador SERCX2SYSTEMDMATRANSMIT para um objeto system-DMA-transmit. O driver do controlador serial anteriormente chamou o método SerCx2SystemDmaTransmitCreate para criar esse objeto.
[in] BytesPurged
O número de bytes de dados não recuos que o driver do controlador serial limpou do FIFO de transmissão.
Retornar valor
Nenhum
Comentários
SerCx2 chama a função de retorno de chamada de evento EvtSerCx2SystemDmaTransmitPurgeFifo , se ela for implementada, para instruir o driver do controlador serial a encerrar a transação atual de transmissão de DMA do sistema. O SerCx2 iniciou essa transação anteriormente em resposta a uma solicitação de gravação (IRP_MJ_WRITE) de um cliente. Por exemplo, SerCx2 poderá chamar essa função se o cliente cancelar a solicitação de gravação pendente ou se a solicitação de gravação atingir o tempo limite. Para obter mais informações, consulte Tratamento serCx2 de solicitações de leitura e gravação.
Em resposta à chamada EvtSerCx2SystemDmaTransmitPurgeFifo , o driver interrompe a transferência de dados do buffer de gravação para o FIFO de transmissão e descarta todos os dados transferidos anteriormente que permanecem no FIFO de transmissão. Depois que a limpeza for concluída, o driver do controlador serial deverá chamar SerCx2SystemDmaTransmitPurgeFifoComplete para notificar o SerCx2. O SerCx2 espera essa notificação e não conclui a solicitação de gravação até que ela seja notificada.
O driver do controlador serial deve chamar SerCx2SystemDmaTransmitPurgeFifoComplete somente em resposta a uma chamada para a função EvtSerCx2SystemDmaTransmitPurgeFifo .
SerCx2 usa o valor do parâmetro BytesPurged para determinar quantos bytes foram transmitidos com êxito antes da limpeza do FIFO de transmissão. O SerCx2 exige que essas informações concluam uma solicitação de gravação que atinge o tempo limite ou uma solicitação de gravação cancelada depois que um ou mais bytes são transmitidos.
Para obter mais informações, consulte SerCx2 System-DMA-Transmit Transactions.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 8.1. |
Plataforma de Destino | Universal |
Cabeçalho | sercx.h |
IRQL | <= DISPATCH_LEVEL |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de