Condividi tramite


EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON funzione di callback (wdfdevice.h)

[Si applica a KMDF e UMDF]

Le braccia della funzione di callback degli eventi EvtDeviceArmWakeFromSxWithReason 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_WITH_REASON EvtWdfDeviceArmWakeFromSxWithReason;

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

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

[in] DeviceWakeEnabled

Valore booleano che, se TRUE, indica che la capacità del dispositivo di riattivare il sistema è abilitata.

[in] ChildrenArmedForWake

Valore booleano che, se TRUE, indica che la capacità di uno o più dispositivi figlio di riattivare il sistema è abilitata.

Valore restituito

Se la funzione di callback EvtDeviceArmWakeFromSxWithReason non rileva alcun errore, deve restituire STATUS_SUCCESS o un altro valore di stato per cui 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) è uguale a FALSE, il framework chiama la funzione di callback EvtDeviceDisarmWakeFromSx del driver. Il framework non segnala un errore del dispositivo al gestore PnP.

Commenti

La versione 1.7 e successive di KMDF supportano la funzione di callback EvtDeviceArmWakeFromSxWithReason oltre alla funzione di callback EvtDeviceArmWakeFromSx .

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

La funzione di callback EvtDeviceArmWakeFromSxWithReason fornisce due parametri che consentono al driver di determinare il motivo per cui il framework lo ha chiamato:

  • Il framework imposta il parametro DeviceWakeEnabled su TRUE se il membro Enabled della struttura WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS indica che il dispositivo può riattivare il sistema.
  • Il framework imposta il parametro ChildrenArmedForWake su TRUE se uno o più dispositivi figlio del dispositivo possono riattivare il sistema e il membro ArmForWakeIfChildrenAreArmedForWake di WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS è impostato su TRUE.
Uno o entrambi questi parametri possono essere TRUE, a causa degli scenari seguenti:
  • Il dispositivo del driver è abilitato per riattivare il sistema.
  • Uno o più dispositivi figlio del dispositivo sono abilitati per riattivare il sistema.
  • Sia il dispositivo che uno o più dispositivi figlio sono abilitati per riattivare il sistema.
Per altre informazioni sulla funzione di callback EvtDeviceArmWakeFromSxWithReason , vedere la sezione Osservazioni di EvtDeviceArmWakeFromSx.

Requisiti

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

Vedi anche

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSx

EvtDeviceDisarmWakeFromSx