Partager via


IPowerNotify ::P owerChangeNotify, méthode (portcls.h)

La méthode PowerChangeNotify informe le pilote miniport des modifications apportées à l’état d’alimentation.

Syntaxe

void PowerChangeNotify(
  [in] POWER_STATE PowerState
);

Paramètres

[in] PowerState

Spécifie l’état actuel de l’alimentation. Ce paramètre est une union de type POWER_STATE. Le nouvel état d’alimentation (PowerState.DeviceState) peut être l’une des valeurs d’énumération DEVICE_POWER_STATE répertoriées dans IAdapterPowerManagement ::P owerChangeState.

Valeur de retour

Aucun

Remarques

Le pilote système PortCls appelle la méthode PowerChangeNotify du pilote miniport pour l’informer des modifications apportées à l’état d’alimentation. L’objectif de cet appel est de donner au pilote miniport une opportunité d’enregistrer tout contexte spécifique au matériel juste avant de mettre hors tension ou de restaurer un contexte précédemment enregistré juste après la mise sous tension.

Le pilote miniport peut écrire dans les registres matériels ou la mémoire à bord pendant l’appel PowerChangeNotify. Si le système est mis hors tension (en faisant une transition d’état à partir de PowerDeviceD0), le pilote système PortCls appelle PowerChangeNotify avant d’appeler IAdapterPowerManagement ::P owerChangeState et après avoir suspendu les flux de données audio actifs. Cela permet au pilote miniport d’enregistrer tout contexte d’appareil spécifique au matériel avant que l’appareil ne se met en panne. Par exemple, un pilote miniport WavePci peut avoir besoin d’enregistrer ses registres DMA si la mise hors tension se produit pendant une séquence de transferts de données de nuages/de collecte. Si le système est en cours d’alimentation (en effectuant une transition d’état vers PowerDeviceD0), PortCls appelle PowerChangeNotify après qu’il appelle PowerChangeState et avant de redémarrer les flux de données audio suspendus. Cela permet au pilote miniport de restaurer un contexte précédemment enregistré après l’alimentation de l’appareil.

Le code de cette méthode doit résider dans la mémoire paginée.

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête portcls.h (include Portcls.h)

Voir aussi

IAdapterPowerManagement ::P owerChangeState

IPowerNotify