Freigeben über


SerCx2PioTransmitPurgeFifoComplete-Funktion (sercx.h)

Die SerCx2PioTransmitPurgeFifoComplete Methode benachrichtigt Version 2 der seriellen Framework-Erweiterung (SerCx2), dass der serielle Controllertreiber die Daten aus dem Übertragen von FIFO in der seriellen Controllerhardware löscht.

Syntax

void SerCx2PioTransmitPurgeFifoComplete(
  [in] SERCX2PIOTRANSMIT PioTransmit,
  [in] ULONG             BytesPurged
);

Parameter

[in] PioTransmit

Ein SERCX2PIOTRANSMIT Handle für ein PIO-Übertragungsobjekt. Der serielle Controllertreiber hat zuvor den SerCx2PioTransmitCreate Methode aufgerufen, um dieses Objekt zu erstellen.

[in] BytesPurged

Die Anzahl der Bytes von nicht gesendeten Daten, die der serielle Controllertreiber aus dem FIFO gelöscht hat.

Rückgabewert

Nichts

Bemerkungen

SerCx2 ruft die EvtSerCx2PioTransmitPurgeFifo Ereignisrückruffunktion auf, wenn sie implementiert ist, um die aktuelle PIO-Übertragungstransaktion zu beenden. SerCx2 hat diese Transaktion zuvor als Reaktion auf eine Schreibanforderung (IRP_MJ_WRITE) von einem Client initiiert. Beispielsweise kann SerCx2 diese Funktion aufrufen, wenn der Client die ausstehende Schreibanforderung abbricht oder das Schreibanforderungsout ausfällt. Weitere Informationen finden Sie unter SerCx2 Handling of Read and Write Requests.

Als Reaktion auf den EvtSerCx2PioTransmitPurgeFifo Funktionsaufruf verwirft der Treiber zunächst alle Daten, die im Übertragungs-FIFO verbleiben; anschließend muss der Treiber SerCx2PioTransmitPurgeFifoComplete- aufrufen, um SerCx2 zu benachrichtigen. SerCx2 erwartet diese Benachrichtigung und schließt die Schreibanforderung erst ab, wenn sie benachrichtigt wird.

Der serielle Controllertreiber muss SerCx2PioTransmitPurgeFifoComplete nur als Reaktion auf einen Aufruf der EvtSerCx2PioTransmitPurgeFifo-Funktion aufrufen.

SerCx2 verwendet den BytesPurged Parameterwert, um zu bestimmen, wie viele Bytes erfolgreich übertragen wurden, bevor die FiFO-Übertragung gelöscht wurde. SerCx2 erfordert, dass diese Informationen eine Schreibanforderung abschließen, die ausfällt, oder eine Schreibanforderung, die abgebrochen wird, nachdem mindestens ein Byte übertragen wurde.

Weitere Informationen finden Sie unter SerCx2 PIO-Transmit Transactions.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar ab Windows 8.1.
Zielplattform- Universal
Header- sercx.h
IRQL- <= DISPATCH_LEVEL

Siehe auch

EvtSerCx2PioTransmitPurgeFifo

IRP_MJ_WRITE

SERCX2PIOTRANSMIT

SERIAL_TIMEOUTS

SerCx2PioTransmitCreate