Bagikan melalui


EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON fungsi panggilan balik (wdfdevice.h)

[Berlaku untuk KMDF dan UMDF]

Lengan fungsi panggilan balik peristiwa EvtDeviceArmWakeFromSxWithReason driver (yaitu, memungkinkan) perangkat sehingga dapat memicu sinyal bangun saat dalam status perangkat berdaya rendah. Sinyal bangun menyebabkan perangkat memasuki status kerjanya (D0) dan menyebabkan sistem memasuki status kerja (S0).

Sintaks

EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON EvtWdfDeviceArmWakeFromSxWithReason;

NTSTATUS EvtWdfDeviceArmWakeFromSxWithReason(
  [in] WDFDEVICE Device,
  [in] BOOLEAN DeviceWakeEnabled,
  [in] BOOLEAN ChildrenArmedForWake
)
{...}

Parameter

[in] Device

Handel ke objek perangkat kerangka kerja.

[in] DeviceWakeEnabled

Nilai Boolean yang, jika TRUE, menunjukkan bahwa kemampuan perangkat untuk membangunkan sistem diaktifkan.

[in] ChildrenArmedForWake

Nilai Boolean yang, jika TRUE, menunjukkan bahwa kemampuan satu atau beberapa perangkat anak untuk membangunkan sistem diaktifkan.

Mengembalikan nilai

Jika fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason tidak mengalami kesalahan, fungsi tersebut harus mengembalikan STATUS_SUCCESS atau nilai status lain yang NT_SUCCESS(statusnya) sama dengan TRUE. Jika tidak, itu harus mengembalikan nilai status yang NT_SUCCESS(status) sama dengan FALSE.

Jika NT_SUCCESS(status) sama dengan FALSE, kerangka kerja memanggil fungsi panggilan balik EvtDeviceDisarmWakeFromSx driver. (Kerangka kerja tidak melaporkan kegagalan perangkat ke manajer PnP.)

Keterangan

KmDF versi 1.7 dan yang lebih baru mendukung fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason selain fungsi panggilan balik EvtDeviceArmWakeFromSx .

Untuk mendaftarkan fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason , driver harus memanggil WdfDeviceInitSetPowerPolicyEventCallbacks. Driver dapat mendaftarkan fungsi panggilan balik EvtDeviceArmWakeFromSx atau fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason , tetapi tidak keduanya.

Fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason menyediakan dua parameter yang memungkinkan driver menentukan mengapa kerangka kerja telah memanggilnya:

  • Kerangka kerja mengatur parameter DeviceWakeEnabled ke TRUE jika anggota yang diaktifkan dari struktur WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS menunjukkan bahwa perangkat dapat membangunkan sistem.
  • Kerangka kerja mengatur parameter ChildrenArmedForWake ke TRUE jika satu atau beberapa perangkat anak perangkat dapat membangunkan sistem dan anggota ArmForWakeIfChildrenAreArmedForWake dari WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS diatur ke TRUE.
Salah satu atau kedua parameter ini dapat berupa TRUE, karena skenario berikut:
  • Perangkat pengandar diaktifkan untuk membangunkan sistem.
  • Satu atau beberapa perangkat anak perangkat diaktifkan untuk membangunkan sistem.
  • Perangkat dan satu atau beberapa perangkat turunannya diaktifkan untuk membangunkan sistem.
Untuk informasi selengkapnya tentang fungsi panggilan balik EvtDeviceArmWakeFromSxWithReason , lihat bagian Keterangan dari EvtDeviceArmWakeFromSx.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1.7
Versi UMDF minimum 2.0
Header wdfdevice.h (termasuk Wdf.h)
IRQL PASSIVE_LEVEL

Lihat juga

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSx

EvtDeviceDisarmWakeFromSx