EVT_WDF_DEVICE_ARM_WAKE_FROM_SX funzione di callback (wdfdevice.h)

[Si applica a KMDF e UMDF]

Le braccia della funzione di callback degli eventi EvtDeviceArmWakeFromSx di un driver (ovvero abilita) un dispositivo in modo che possa attivare un segnale di riattivazione in uno stato del dispositivo a basso consumo. Il segnale di riattivazione fa sì che il dispositivo entri nello stato di lavoro (D0) e che il sistema entri nello stato di lavoro (S0).

Sintassi

EVT_WDF_DEVICE_ARM_WAKE_FROM_SX EvtWdfDeviceArmWakeFromSx;

NTSTATUS EvtWdfDeviceArmWakeFromSx(
  [in] WDFDEVICE Device
)
{...}

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

Valore restituito

Se la funzione di callback EvtDeviceArmWakeFromSx non rileva alcun errore, deve restituire STATUS_SUCCESS o un altro valore di stato per il quale NT_SUCCESS(status) è uguale a TRUE. In caso contrario, deve restituire un valore di stato per il quale NT_SUCCESS(status) è uguale a FALSE.

Se NT_SUCCESS(status) è FALSE, il framework chiama la funzione di callback EvtDeviceDisarmWakeFromSx del driver. Il framework non segnala un errore del dispositivo al gestore PnP.

Commenti

Per registrare una funzione di callback EvtDeviceArmWakeFromSx , un driver deve chiamare WdfDeviceInitSetPowerPolicyEventCallbacks. I driver possono registrare una funzione di callback EvtDeviceArmWakeFromSx o evtDeviceArmWakeFromSxWithReason , ma non entrambi.

Questa funzione di callback gestisce operazioni specifiche del dispositivo necessarie per consentire al dispositivo di rilevare un evento esterno che attiva un segnale di riattivazione sul bus. La funzione di callback EvtDeviceEnableWakeAtBus del conducente del bus gestisce operazioni specifiche del bus, ad esempio l'abilitazione del segnale PME (Power Management Event) del bus PCI.

Se un driver ha registrato una funzione di callback EvtDeviceArmWakeFromSx o EvtDeviceArmWakeFromSxWithReason , il framework lo chiama mentre il dispositivo è ancora nello stato di alimentazione del dispositivo D0, prima che il driver del bus abbassa lo stato di alimentazione del dispositivo, ma dopo che il framework ha inviato un IRP di attesa/riattivazione per conto del driver.

Il processo si verifica nella sequenza seguente:

  1. Il framework determina che il sistema sta per entrare in uno stato del sistema a basso consumo.
  2. Il framework chiama la funzione di callback EvtDeviceArmWakeFromSx o EvtDeviceArmWakeFromSxWithReason del driver.
  3. Il framework chiede al driver che il bus del dispositivo riduce l'alimentazione del dispositivo.
Immediatamente prima che un dispositivo entri in uno stato a basso consumo, il framework chiama la funzione di callback EvtDeviceD0Exit del driver.

Per altre informazioni sui casi in cui il framework chiama questa funzione di callback, vedere Scenari di risparmio energia e PnP.

Non è necessario fornire una funzione di callback EvtDeviceArmWakeFromSx o EvtDeviceArmWakeFromSxWithReason se il dispositivo non richiede operazioni hardware speciali che consentono al dispositivo di attivare un segnale di riattivazione.

Per altre informazioni su questa funzione di callback, vedere Supporto della riattivazione del sistema.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Versione UMDF minima 2,0
Intestazione wdfdevice.h (include Wdf.h)
IRQL PASSIVE_LEVEL

Vedi anche

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSxWithReason

EvtDeviceDisarmWakeFromSx