Méthode IPowerNotify ::P owerChangeNotify (portcls.h)

La PowerChangeNotify méthode avertit le pilote miniport des modifications de l’état d’alimentation.

Syntaxe

void PowerChangeNotify(
  [in] POWER_STATE PowerState
);

Paramètres

[in] PowerState

Spécifie l’état d’alimentation actuel. Ce paramètre est une union de type POWER_STATE. 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

None

Remarques

Le pilote système PortCls appelle la méthode du PowerChangeNotify pilote miniport pour l’informer des modifications de l’état d’alimentation. L’objectif de cet appel est de donner au pilote miniport la possibilité d’enregistrer n’importe quel 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 embarquée pendant l’appel PowerChangeNotify . Si le système est hors tension (faisant une transition d’état loin 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 n’importe quel contexte d’appareil spécifique au matériel avant que l’appareil ne s’allume. Par exemple, un pilote de miniport WavePci peut avoir besoin d’enregistrer ses registres DMA si l’arrêt se produit pendant une séquence de transferts de données de diffusion/collecte. Si le système se met sous tension (effectue une transition d’état vers PowerDeviceD0), PortCls appelle PowerChangeNotify après avoir appelé PowerChangeState et avant de redémarrer les flux de données audio en pause. Cela permet au pilote miniport de restaurer un contexte précédemment enregistré une fois que l’appareil est sous tension.

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

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête portcls.h (include Portcls.h)

Voir aussi

IAdapterPowerManagement ::P owerChangeState

IPowerNotify