DeviceWake

Člen DeviceWakeDEVICE_CAPABILITIES obsahuje nejnižší (nejméně napájený) stav napájení zařízení, ze kterého může zařízení signalizovat událost probuzení, nebo PowerDeviceUnspecified, pokud zařízení nemůže probudit v reakci na externí signál.

Řidič autobusu nastaví tuto hodnotu. Ovladač vyšší úrovně může změnit hodnotu na stav s vyšším výkonem. Pokud například ovladač sběrnice nastaví DeviceWake na D3, ale ovladač na nižší úrovni v hierarchii zařízení podporuje probuzení pouze z D2, ovladač vyšší úrovně může změnit hodnotu na D2.

Všimněte si, že pokud ovladač změní DeviceWake, může také muset změnit SystemWake , aby nedošlo ke konfliktům s mapováním systému na zařízení v poli DeviceState . Předpokládejme například, že řidič autobusu nastaví následující:

  • DeviceState[PowerSystemSleeping1] = PowerDeviceD1

  • DeviceState[PowerSystemSleeping2] = PowerDeviceD3

  • DeviceWake = PowerDeviceD3

  • SystemWake = PowerSystemSleeping2

Pokud ovladač vyšší úrovně zjistí, že jeho zařízení nemůže systém probudit z D3, ale pouze z D2 nebo vyšší, může změnit DeviceWake na D2. Tato změna však způsobí, že mapování z S2 na D3 nebude možné. Mějte na paměti, že pole DeviceState uvádí nejvyšší stav napájení zařízení, které může zařízení podporovat pro daný stav napájení systému. Pokud je stav napájení systému v příkladu PowerSystemSleeping2, stav napájení zařízení nemůže být PowerDeviceD2. Chcete-li tento problém odstranit, ovladač musí také změnit SystemWake na PowerSystemSleeping1. Totéž platí pro nastavení WakeFromDx a DeviceDx . Ovladač musí zajistit, aby všechny změny provedené v systemWake nebo DeviceWake nebyly v konfliktu s hodnotami WakeFromDx a DeviceDx. Hodnoty WakeFromDx a DeviceDx odrážejí vlastnosti hardwaru, které ovladač nemůže změnit.

Pokud jsou členy SystemWake i DeviceWake nenulové (to znamená, že nejsou PowerSystemUnspecified), zařízení a jeho ovladače podporují probuzení tohoto systému.

Na hardwaru jiného než ACPI obsahuje člen DeviceWake nulu (PowerSystemUnspecified).