struktur WDF_DEVICE_POWER_CAPABILITIES (wdfdevice.h)
[Berlaku untuk KMDF dan UMDF]
Struktur WDF_DEVICE_POWER_CAPABILITIES menjelaskan kemampuan daya perangkat.
Sintaks
typedef struct _WDF_DEVICE_POWER_CAPABILITIES {
ULONG Size;
WDF_TRI_STATE DeviceD1;
WDF_TRI_STATE DeviceD2;
WDF_TRI_STATE WakeFromD0;
WDF_TRI_STATE WakeFromD1;
WDF_TRI_STATE WakeFromD2;
WDF_TRI_STATE WakeFromD3;
DEVICE_POWER_STATE DeviceState[PowerSystemMaximum];
DEVICE_POWER_STATE DeviceWake;
SYSTEM_POWER_STATE SystemWake;
ULONG D1Latency;
ULONG D2Latency;
ULONG D3Latency;
DEVICE_POWER_STATE IdealDxStateForSx;
} WDF_DEVICE_POWER_CAPABILITIES, *PWDF_DEVICE_POWER_CAPABILITIES;
Anggota
Size
Ukuran, dalam byte, dari struktur ini.
DeviceD1
Nilai jenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, bahwa perangkat mendukung status tidur perangkat D1. Untuk informasi selengkapnya tentang nilai WDF_TRI_STATE , lihat bagian Keterangan berikut ini.
DeviceD2
Nilai jenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, bahwa perangkat mendukung status tidur perangkat D2.
WakeFromD0
Nilai jenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, perangkat dapat merespons sinyal bangun saat dalam status D0 .
WakeFromD1
Nilai berjenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, perangkat dapat merespons sinyal bangun saat dalam status D1.
WakeFromD2
Nilai jenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, perangkat dapat merespons sinyal bangun saat dalam status D2.
WakeFromD3
Nilai berjenis WDF_TRI_STATE yang menunjukkan, jika diatur ke WdfTrue, perangkat dapat merespons sinyal bangun saat dalam status D3.
DeviceState[PowerSystemMaximum]
Array nilai DEVICE_POWER_STATE-typed yang menunjukkan status perangkat yang paling didukung yang didukung perangkat untuk setiap status daya sistem. Array ini menggunakan enumerasi SYSTEM_POWER_STATE sebagai nilai indeks. Jika nilai elemen array adalah PowerDeviceMaximum, kerangka kerja menggunakan nilai apa pun yang telah disimpan sistem operasi untuk elemen tersebut. Enumerasi DEVICE_POWER_STATE dan SYSTEM_POWER_STATE didefinisikan dalam wdm.h. Untuk informasi selengkapnya tentang anggota DeviceState , lihat DeviceState.
DeviceWake
Nilai yang diketik DEVICE_POWER_STATE yang menunjukkan status daya perangkat terendah dari mana perangkat dapat mengirim sinyal bangun ke sistem. Jika nilai ini adalah PowerDeviceMaximum, kerangka kerja menggunakan nilai apa pun yang saat ini disimpan dalam sistem untuk anggota ini.
SystemWake
Nilai jenis SYSTEM_POWER_STATE yang menunjukkan status daya sistem terendah dari mana perangkat dapat mengirim sinyal bangun ke sistem. Jika nilai ini adalah PowerSystemMaximum, kerangka kerja menggunakan nilai apa pun yang saat ini disimpan dalam sistem untuk anggota ini. nilai SYSTEM_POWER_STATE didefinisikan dalam wdm.h.
D1Latency
Perkiraan waktu, dalam unit 100 nanodetik, bahwa perangkat harus kembali ke status D0 dari status D1-nya. Jika nilai ini adalah -1, kerangka kerja menggunakan nilai apa pun yang saat ini disimpan dalam sistem untuk anggota ini.
D2Latency
Perkiraan waktu, dalam unit 100 nanodetik, bahwa perangkat harus kembali ke status D0 dari status D2-nya. Jika nilai ini adalah -1, kerangka kerja menggunakan nilai apa pun yang saat ini disimpan dalam sistem untuk anggota ini.
D3Latency
Perkiraan waktu, dalam unit 100 nanodetik, bahwa perangkat harus kembali ke status D0 dari status D3-nya. Jika nilai ini adalah -1, kerangka kerja menggunakan nilai apa pun yang saat ini disimpan dalam sistem untuk anggota ini.
IdealDxStateForSx
Nilai jenis DEVICE_POWER_STATE yang menunjukkan status tidur perangkat yang harus dimasukkan perangkat ketika sistem memasuki status sistem tidur dan perangkat tidak diaktifkan untuk membangunkan sistem. Jika nilai ini nol, kerangka kerja menggunakan PowerDeviceD3. Nilai ini tidak boleh PowerDeviceD0.
Jika driver menentukan nilai IdealDxStateForSx yang mewakili status tidur perangkat dengan daya lebih tinggi daripada yang telah ditentukan tumpukan perangkat dalam array DeviceState perangkat, kerangka kerja menggunakan status bertenaga lebih rendah yang ada dalam array. Misalnya, jika driver menentukan nilai IdealDxStateForSx D1 dan array DeviceState perangkat menentukan D2, kerangka kerja menggunakan D2.
Keterangan
Struktur WDF_DEVICE_POWER_CAPABILITIES digunakan sebagai input ke WdfDeviceSetPowerCapabilities.
Beberapa anggota menggunakan jenis WDF_TRI_STATE . Untuk anggota ini, aturan berikut berlaku:
- Nilai WdfTrue menunjukkan bahwa perangkat mendukung kemampuan dan nilai WdfFalse menunjukkan tidak.
- Driver fungsi dan driver filter dapat menentukan WdfTrue atau WdfFalse, atau nilai WdfUseDefault untuk menunjukkan bahwa kerangka kerja harus menggunakan nilai yang disediakan oleh driver yang lebih rendah di tumpukan. Misalnya, jika driver bus menentukan WdfTrue untuk DeviceD1 dan driver fungsi perangkat menentukan WdfUseDefault, kerangka kerja menggunakan WdfTrue untuk kemampuan tersebut.
- Ketika driver bus memanggil WdfDeviceSetPowerCapabilities setelah membuat objek perangkat untuk perangkat anak, itu harus menentukan WdfTrue atau WdfFalse. Driver bus dapat menentukan WdfUseDefault untuk perangkat anak, tetapi dalam hal ini WdfUseDefault sama dengan WdfFalse.
Persyaratan
Persyaratan | Nilai |
---|---|
Versi KMDF minimum | 1,0 |
Versi UMDF minimum | 2.0 |
Header | wdfdevice.h (termasuk Wdf.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk