SerCx2PioTransmitPurgeFifoComplete 函式 (sercx.h)

SerCx2PioTransmitPurgeFifoComplete方法會通知序列架構延伸模組第 2 版 (SerCx2) 序列控制器驅動程式已完成從序列控制器硬體中的傳輸 FIFO 清除資料。

語法

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

參數

[in] PioTransmit

PIO 傳輸物件的 SERCX2PIOTRANSMIT控制碼。 序列控制器驅動程式先前稱為 SerCx2PioTransmitCreate 方法來建立此物件。

[in] BytesPurged

序列控制器驅動程式從傳輸 FIFO 中清除之未傳送資料的位元組數目。

傳回值

備註

如果實作,SerCx2 會呼叫 EvtSerCx2PioTransmitPurgeFifo 事件回呼函式,以結束目前的 PIO 傳輸交易。 SerCx2 先前已起始此交易,以回應來自用戶端的寫入 (IRP_MJ_WRITE) 要求。 例如,如果用戶端解除擱置的寫入要求,或寫入要求逾時,SerCx2 可能會呼叫此函式。如需詳細資訊,請參閱 SerCx2 讀取和寫入要求的處理

為了回應 EvtSerCx2PioTransmitPurgeFifo 函式呼叫,驅動程式會先捨棄傳輸 FIFO 中保留的任何資料;然後驅動程式必須呼叫 SerCx2PioTransmitPurgeFifoComplete 以通知 SerCx2。 SerCx2 需要此通知,而且在收到通知之前不會完成寫入要求。

序列控制器驅動程式必須呼叫 SerCx2PioTransmitPurgeFifoComplete ,才能回應 EvtSerCx2PioTransmitPurgeFifo 函式的呼叫。

SerCx2 會使用 BytesPurged 參數值來判斷在清除傳輸 FIFO 之前已成功傳輸的位元組數目。 SerCx2 需要此資訊才能完成逾時的寫入要求,或傳輸一或多個位元組之後取消的寫入要求。

如需詳細資訊,請參閱 SerCx2 PIO-Transmit Transactions

規格需求

   
最低支援的用戶端 從 Windows 8.1 開始提供。
目標平臺 環球
標頭 sercx.h
IRQL <= DISPATCH_LEVEL

另請參閱

EvtSerCx2PioTransmitPurgeFifo

IRP_MJ_WRITE

SERCX2PIOTRANSMIT

SERIAL_TIMEOUTS

SerCx2PioTransmitCreate