GET_D3COLD_CAPABILITY fungsi panggilan balik (wdm.h)

Rutinitas GetBusDriverD3ColdSupport memungkinkan driver untuk perangkat mengkueri apakah driver bus enumerasi mendukung status daya perangkat D3cold.

Sintaks

GET_D3COLD_CAPABILITY GetD3coldCapability;

NTSTATUS GetD3coldCapability(
  [in, optional] PVOID Context,
  [out]          PBOOLEAN D3ColdSupported
)
{...}

Parameter

[in, optional] Context

Penunjuk ke informasi konteks khusus antarmuka. Pemanggil mengatur parameter ini ke nilai anggota Konteks dari struktur D3COLD_SUPPORT_INTERFACE untuk antarmuka.

[out] D3ColdSupported

Penunjuk ke variabel BOOLEAN tempat rutin menulis nilai untuk menunjukkan apakah pengemudi bus mendukung D3cold. Jika nilai ini TRUE, driver bus mendukung D3cold. Jika FALSE, driver bus tidak mendukung D3cold. Jika panggilan gagal, rutinitas mengembalikan kode status kesalahan dan tidak menulis apa pun ke variabel ini.

Nilai kembali

Rutinitas GetBusDriverD3ColdSupport mengembalikan STATUS_SUCCESS jika berhasil. Jika tidak, kode status kesalahan akan ditampilkan.

Keterangan

Driver untuk perangkat memanggil versi rutinitas ini yang diimplementasikan oleh driver Windows ACPI, Acpi.sys. Rutinitas ini memeriksa driver bus induk untuk perangkat guna menentukan apakah driver bus ini mendukung status daya D3cold.

Misalnya, dimulai dengan Windows 8, Microsoft menyediakan driver USB 3.0 eXtensible Host Controller Interface (xHCI) kotak masuk yang mendukung D3cold. Beberapa vendor perangkat keras pihak ketiga menyediakan driver Windows untuk pengontrol xHCI mereka, tetapi driver ini mungkin tidak mendukung D3cold. Driver untuk perangkat USB 3.0 dapat memanggil rutinitas GetBusDriverD3ColdSupport untuk menentukan apakah driver pengontrol xHCI induk mendukung D3cold.

Pengemudi bus mendukung D3cold jika semua hal berikut ini benar:

  • Driver bus mengimplementasikan antarmuka driver GUID_D3COLD_SUPPORT_INTERFACE.
  • Driver bus mengimplementasikan rutinitas GetBusDriverD3ColdSupport dalam antarmuka ini.
  • Nilai output dari rutinitas GetBusDriverD3ColdSupport menunjukkan bahwa driver bus mendukung D3cold.
Driver untuk perangkat dapat memanggil rutinitas GetIdleWakeInfo untuk menentukan apakah driver bus dan firmware sistem ACPI mendukung D3cold untuk perangkat. Jika panggilan ini gagal dan mengembalikan kode status kesalahan, driver perangkat dapat memanggil rutinitas GetBusDriverD3ColdSupport untuk menentukan apakah kegagalan disebabkan oleh kurangnya dukungan D3cold oleh driver bus induk.

Perangkat di bus dapat melakukan transisi ke substate D3cold hanya jika pengemudi bus mendukung transisi ini. Jika driver bus tidak mendukung D3cold, perangkat tidak pernah memasuki D3cold, bahkan jika driver fungsi untuk perangkat memanggil rutinitas SetD3ColdSupport untuk mengaktifkan transisi ke D3cold. Dalam hal ini, panggilan SetD3ColdSupport tidak berpengaruh, tetapi tidak berbahaya.

Untuk alasan ini, sebagian besar driver perangkat tidak perlu memanggil rutinitas GetBusDriverD3ColdSupport .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.
Target Platform Desktop
Header wdm.h (termasuk Wdm.h)
IRQL PASSIVE_LEVEL

Lihat juga

D3COLD_SUPPORT_INTERFACE

GetIdleWakeInfo

SetD3ColdSupport