Bagikan melalui


SerCx2SystemDmaTransmitPurgeFifoComplete (sercx.h)

Metode SerCx2SystemDmaTransmitPurgeFifoComplete memberi tahu versi 2 dari ekstensi kerangka kerja serial (SerCx2) bahwa driver pengontrol serial telah selesai membersihkan data dari pengiriman FIFO di perangkat keras pengontrol serial.

Sintaks

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

Parameter

[in] SystemDmaTransmit

Handel SERCX2SYSTEMDMATRANSMIT ke objek transmisi DMA sistem. Driver pengontrol serial sebelumnya disebut metode SerCx2SystemDmaTransmitCreate untuk membuat objek ini.

[in] BytesPurged

Jumlah byte data yang tidak terpakai yang dibersihkan driver pengontrol serial dari FIFO yang dikirimkan.

Nilai kembali

Tidak ada

Keterangan

SerCx2 memanggil fungsi panggilan balik peristiwa EvtSerCx2SystemDmaTransmitPurgeFifo , jika diimplementasikan, untuk memberi tahu driver pengontrol serial untuk mengakhiri transaksi transmisi DMA sistem saat ini. SerCx2 sebelumnya memulai transaksi ini sebagai respons terhadap permintaan tulis (IRP_MJ_WRITE) dari klien. Misalnya, SerCx2 mungkin memanggil fungsi ini jika klien membatalkan permintaan tulis yang tertunda, atau jika waktu permintaan tulis habis. Untuk informasi selengkapnya, lihat Penanganan SerCx2 Permintaan Baca dan Tulis.

Menanggapi panggilan EvtSerCx2SystemDmaTransmitPurgeFifo , driver menghentikan transfer data dari buffer tulis ke FIFO pengiriman, dan membuang data yang ditransfer sebelumnya yang tetap berada di FIFO pengiriman. Setelah pembersihan selesai, driver pengontrol serial harus memanggil SerCx2SystemDmaTransmitPurgeFifoComplete untuk memberi tahu SerCx2. SerCx2 mengharapkan pemberitahuan ini dan tidak menyelesaikan permintaan tulis sampai diberi tahu.

Driver pengontrol serial harus memanggil SerCx2SystemDmaTransmitPurgeFifoComplete hanya sebagai respons terhadap panggilan ke fungsi EvtSerCx2SystemDmaTransmitPurgeFifo .

SerCx2 menggunakan nilai parameter BytesPurged untuk menentukan berapa banyak byte yang berhasil ditransmisikan sebelum PENGIRIMAN FIFO dibersihkan. SerCx2 memerlukan informasi ini untuk menyelesaikan permintaan tulis yang kehabisan waktu, atau permintaan tulis yang dibatalkan setelah satu atau beberapa byte dikirimkan.

Untuk informasi selengkapnya, lihat SerCx2 System-DMA-Transmit Transactions.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.1.
Target Platform Universal
Header sercx.h
IRQL <= DISPATCH_LEVEL

Lihat juga

EvtSerCx2SystemDmaTransmitPurgeFifo

IRP_MJ_WRITE

SERCX2SYSTEMDMATRANSMIT

SERIAL_TIMEOUTS

SerCx2SystemDmaTransmitCreate