Поделиться через


Метод IPowerNotify::P owerChangeNotify (portcls.h)

Метод PowerChangeNotify уведомляет драйвер мини-порта об изменениях в состоянии питания.

Синтаксис

void PowerChangeNotify(
  [in] POWER_STATE PowerState
);

Параметры

[in] PowerState

Указывает текущее состояние питания. Этот параметр представляет собой объединение типа POWER_STATE. Новое состояние питания (PowerState.DeviceState) может быть одним из DEVICE_POWER_STATE значений перечисления, перечисленных в IAdapterPowerManagement::P owerChangeState.

Возвращаемое значение

None

Remarks

Системный драйвер PortCls вызывает метод драйвера PowerChangeNotify мини-порта, чтобы уведомить его об изменениях в состоянии питания. Цель этого вызова — предоставить драйверу мини-порта возможность сохранить любой аппаратный контекст непосредственно перед выключением питания или восстановить ранее сохраненный контекст сразу после включения питания.

Во время вызова драйвер мини-порта может записывать данные в аппаратные регистры или в локальную PowerChangeNotify память. Если система отключается (выполняется переход состояния от PowerDeviceD0), системный драйвер PortCls вызывает PowerChangeNotify перед вызовом IAdapterPowerManagement::P owerChangeStateState и после приостановки активных потоков аудиоданных. Это дает драйверу мини-порта возможность сохранить любой контекст устройства, зависящий от оборудования, перед выключением устройства. Например, драйверу miniport WavePci может потребоваться сохранить свои регистры DMA, если выключение питания происходит во время последовательности передачи точечной и сборной данных. Если система включается (выполняется переход состояния к PowerDeviceD0), PortCls вызывается PowerChangeNotify после вызова PowerChangeState и перед перезапуском всех приостановленных потоков аудиоданных. Это дает драйверу мини-порта возможность восстановить ранее сохраненный контекст после включения питания устройства.

Код для этого метода должен находиться в страничной памяти.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть portcls.h (включая Portcls.h)

См. также раздел

IAdapterPowerManagement::P owerChangeState

IPowerNotify