EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON fonction de rappel (wdfdevice.h)

[S’applique à KMDF et UMDF]

EvtDeviceArmWakeFromSxWithReason, les bras de fonction de rappel de l’événement EvtDeviceArmWakeFromSxWithReason (autrement dit, active) un appareil afin qu’il puisse déclencher un signal de veille alors qu’il est dans un état d’appareil à faible alimentation. Le signal de veille provoque l’entrée de l’appareil dans son état de travail (D0) et provoque l’entrée du système dans son état de travail (S0).

Syntaxe

EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON EvtWdfDeviceArmWakeFromSxWithReason;

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

Paramètres

[in] Device

Handle vers un objet d’appareil framework.

[in] DeviceWakeEnabled

Valeur booléenne qui, si TRUE, indique que la capacité de l’appareil à réveiller le système est activée.

[in] ChildrenArmedForWake

Valeur booléenne qui, si TRUE, indique que la capacité d’un ou plusieurs appareils enfants à réveiller le système est activée.

Valeur de retour

Si la fonction de rappel EvtDeviceArmWakeFromSxWithReason ne rencontre aucune erreur, elle doit retourner STATUS_SUCCESS ou une autre valeur d’état pour laquelle NT_SUCCESS(status) est égal à TRUE. Sinon, il doit retourner une valeur d’état pour laquelle NT_SUCCESS(status) est égal à FALSE.

Si NT_SUCCESS(status) est égal à FALSE, l’infrastructure appelle la fonction de rappel EvtDeviceDisarmWakeFromSx du pilote. (L’infrastructure ne signale pas de défaillance d’appareil au gestionnaire PnP.)

Remarques

La version 1.7 et les versions ultérieures de KMDF prennent en charge la fonction de rappel EvtDeviceArmWakeFromSxWithReason , en plus de la fonction de rappel EvtDeviceArmWakeFromSx .

Pour inscrire une fonction de rappel EvtDeviceArmWakeFromSxWithReason , un pilote doit appeler WdfDeviceInitSetPowerPolicyEventCallbacks. Les pilotes peuvent inscrire une fonction de rappel EvtDeviceArmWakeFromSx ou une fonction de rappel EvtDeviceArmWakeFromSxWithReason , mais pas les deux.

La fonction de rappel EvtDeviceArmWakeFromSxWithReason fournit deux paramètres qui permettent au pilote de déterminer pourquoi l’infrastructure l’a appelée :

  • L’infrastructure définit le paramètre DeviceWakeEnabled sur TRUE si le membre Activé de la structure WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS indique que l’appareil peut réveiller le système.
  • L’infrastructure définit le paramètre ChildrenArmedForWake sur TRUE si un ou plusieurs appareils enfants de l’appareil peuvent réveiller le système et le membre ArmForWakeIfChildrenAreArmedForWake de WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS est défini sur TRUE.
L’un ou les deux de ces paramètres peuvent être TRUE, en raison des scénarios suivants :
  • L’appareil du pilote est activé pour réveiller le système.
  • Un ou plusieurs appareils enfants de l’appareil sont activés pour réveiller le système.
  • L’appareil et un ou plusieurs de ses appareils enfants sont activés pour réveiller le système.
Pour plus d’informations sur la fonction de rappel EvtDeviceArmWakeFromSxWithReason , consultez la section Notes d’EvtDeviceArmWakeFromSx.

Spécifications

   
Plateforme cible Universal
Version KMDF minimale 1.7
Version UMDF minimale 2,0
En-tête wdfdevice.h (include Wdf.h)
IRQL PASSIVE_LEVEL

Voir aussi

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSx

EvtDeviceDisarmWakeFromSx