共用方式為


SerCx2SystemDmaTransmitPurgeFifoComplete 函式 (sercx.h)

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

語法

void SerCx2SystemDmaTransmitPurgeFifoComplete(
  [in] SERCX2SYSTEMDMATRANSMIT SystemDmaTransmit,
  [in] ULONG                   BytesPurged
);

參數

[in] SystemDmaTransmit

system-DMA-transmit 對象的 SERCX2SYSTEMDMATRANSMIT 句柄。 序列控制器驅動程式先前稱為 SerCx2SystemDmaTransmitCreate 方法來建立這個物件。

[in] BytesPurged

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

傳回值

沒有

言論

SerCx2 會呼叫 EvtSerCx2SystemDmaTransmitPurgeFifo 事件回呼函式,如果實作,則告知序列控制器驅動程序終止目前的 system-DMA-transmit 交易。 SerCx2 先前已起始此交易,以回應來自用戶端的寫入(IRP_MJ_WRITE) 要求。 例如,如果用戶端取消暫止的寫入要求,或寫入要求逾時,SerCx2 可能會呼叫此函式。如需詳細資訊,請參閱 SerCx2 讀取和寫入要求的處理

為了回應 EvtSerCx2SystemDmaTransmitPurgeFifo 呼叫,驅動程式會停止將數據從寫入緩衝區傳輸到傳輸 FIFO,並捨棄任何先前傳輸的數據。 清除完成之後,序列控制器驅動程序必須呼叫 SerCx2SystemDmaTransmitPurgeFifoComplete,以通知 SerCx2。 SerCx2 預期會有此通知,而且在收到通知之前,不會完成寫入要求。

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

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

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

要求

要求 價值
最低支援的用戶端 從 Windows 8.1 開始提供。
目標平臺 普遍
標頭 sercx.h
IRQL <= DISPATCH_LEVEL

另請參閱

EvtSerCx2SystemDmaTransmitPurgeFifo

IRP_MJ_WRITE

SERCX2SYSTEMDMATRANSMIT

SERIAL_TIMEOUTS

SerCx2SystemDmaTransmitCreate