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 gelöscht hat.

Syntax

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

Parameter

[in] PioTransmit

Ein SERCX2PIOTRANSMIT-Handle zu einem PIO-Übertragungsobjekt. Der serielle Controllertreiber hat zuvor die SerCx2PioTransmitCreate-Methode aufgerufen, um dieses Objekt zu erstellen.

[in] BytesPurged

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

Rückgabewert

Keine

Bemerkungen

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

Als Reaktion auf den EvtSerCx2PioTransmitPurgeFifo-Funktionsaufruf verworfen der Treiber zuerst alle Daten, die im Übertragungs-FIFO verbleiben; dann 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 Funktion EvtSerCx2PioTransmitPurgeFifo aufrufen.

SerCx2 verwendet den BytesPurged-Parameterwert , um zu bestimmen, wie viele Bytes erfolgreich übertragen wurden, bevor die Übertragung FIFO gelöscht wurde. SerCx2 erfordert diese Informationen, um eine Schreibanforderung abzuschließen, die ausgecheckt ist, oder eine Schreibanforderung, die abgebrochen wird, nachdem mindestens ein Bytes übertragen wurde.

Weitere Informationen finden Sie unter SerCx2 PIO-Transmit Transaktionen.

Requirements (Anforderungen)

   
Unterstützte Mindestversion (Client) Ab Windows 8.1 verfügbar.
Zielplattform Universell
Header sercx.h
IRQL <= DISPATCH_LEVEL

Weitere Informationen

EvtSerCx2PioTransmitPurgeFifo

IRP_MJ_WRITE

SERCX2PIOTRANSMIT

SERIAL_TIMEOUTS

SerCx2PioTransmitCreate