Fungsi SerCx2InitializeDevice (sercx.h)

Metode SerCx2InitializeDevice selesai menginisialisasi objek perangkat kerangka kerja untuk pengontrol serial.

Sintaks

NTSTATUS SerCx2InitializeDevice(
  [in] WDFDEVICE      Device,
  [in] PSERCX2_CONFIG Config
);

Parameter

[in] Device

Handel WDFDEVICE ke objek perangkat kerangka kerja yang mewakili pengontrol serial. Untuk informasi selengkapnya, lihat Keterangan.

[in] Config

Penunjuk ke struktur SERCX2_CONFIG yang dialokasikan penelepon yang berisi penunjuk ke serangkaian fungsi panggilan balik peristiwa yang diterapkan oleh driver pengontrol serial. Versi 2 dari pengontrol kerangka kerja serial (SerCx2) memanggil fungsi-fungsi ini untuk mengonfigurasi pengontrol serial dan untuk melakukan operasi dasar yang independen dari jenis transaksi I/O (PIO, DMA sistem, atau kustom) yang didukung driver.

Nilai kembali

SerCx2InitializeDevice mengembalikan STATUS_SUCCESS jika panggilan berhasil. Kemungkinan nilai pengembalian kesalahan menyertakan kode status berikut.

Menampilkan kode Deskripsi
STATUS_INVALID_DEVICE_REQUEST
Metode ini dipanggil pada IRQL yang salah, atau parameter Perangkat bukan handel WDFDEVICE yang valid.
STATUS_INFO_LENGTH_MISMATCH
NilaiUkuranKonfigurasi-> tidak sama dengan sizeof(SERCX2_CONFIG).
STATUS_INVALID_PARAMETER
Anggota RequestAttributes tidak valid, atau fungsi panggilan balik yang diperlukan hilang dari daftar penunjuk fungsi. Untuk informasi selengkapnya, lihat Keterangan.
STATUS_INSUFFICIENT_RESOURCES
Sumber daya yang tidak mencukup tersedia untuk melakukan operasi yang diminta.

Keterangan

Sebelum memanggil metode ini, driver pengontrol serial sebelumnya harus memanggil metode SerCx2InitializeDeviceInit .

Driver pengontrol serial harus memanggil metode ini dari fungsi panggilan balik EvtDriverDeviceAdd setelah membuat objek perangkat kerangka kerja untuk pengontrol serial. Driver biasanya memanggil metode seperti WdfDeviceCreate untuk membuat objek perangkat kerangka kerja dan untuk mendapatkan handel WDFDEVICE ke objek ini.

Tiga penunjuk fungsi dalam struktur SERCX2_CONFIG diperlukan oleh SerCx2. Driver harus mengimplementasikan fungsi panggilan balik EvtSerCx2PurgeFifos, EvtSerCx2Control, dan EvtSerCx2ApplyConfig . Jika tidak, panggilan SerCx2InitializeDevice gagal dan mengembalikan STATUS_INVALID_PARAMETER.

Jika anggota RequestAttributes dari struktur SERCX2_CONFIG diatur ke nilai selain WDF_NO_OBJECT_ATTRIBUTES, driver tidak boleh menimpa nilai yang ditulis ke anggota ParentObject, ExecutionLevel, dan SynchronizationScope dari struktur ini oleh fungsi WDF_OBJECT_ATTRIBUTES_INIT . Jika tidak, panggilan SerCx2InitializeDevice gagal dan mengembalikan STATUS_INVALID_PARAMETER.

Jika driver memanggil metode WdfDeviceInitSetRequestAttributes untuk mengatur atribut yang akan digunakan untuk objek permintaan, atribut permintaan yang ditentukan dalam panggilan ini harus cocok dengan atribut permintaan yang ditentukan driver dalam panggilan ke SerCx2InitializeDevice. Untuk informasi selengkapnya, lihat Transaksi Custom-Receive SerCx2 dan Transaksi Custom-Transmit SerCx2.

Persyaratan

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

Lihat juga

EvtDriverDeviceAdd

SERCX2_CONFIG

SerCx2InitializeDeviceInit

WdfDeviceCreate

WdfDeviceInitSetRequestAttributes