Метод IPowerPolicyCallbackWakeFromS0::OnArmWakeFromS0 (wudfddi.h)
[Предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. В UMDF 1 новые функции не добавляются, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе начало работы с UMDF.]
Оператор функции обратного вызова OnArmWakeFromS0 драйвера (т. е. включает) устройство, чтобы оно запустите сигнал пробуждения в состоянии устройства с низким энергопотреблением, если система остается в рабочем состоянии системы (S0).
Синтаксис
HRESULT OnArmWakeFromS0(
[in] IWDFDevice *pWdfDevice
);
Параметры
[in] pWdfDevice
Указатель на интерфейс IWDFDevice объекта устройства, представляющего одно из устройств драйвера.
Возвращаемое значение
Если операция выполнена успешно, функция обратного вызова OnArmWakeFromS0 должна возвращать S_OK или другое значение состояния, для которого SUCCEEDED(status) равно TRUE. В противном случае он должен вернуть значение состояния, для которого SUCCEEDED(status) равно FALSE.
Если значение SUCCEEDED(status) равно FALSE, платформа вызывает функцию обратного вызова IPowerPolicyCallbackWakeFromS0::OnDisarmWakeFromS0 драйвера. (Платформа не сообщает диспетчеру PnP о сбое устройства.)
Комментарии
Драйвер должен предоставить функцию обратного вызова OnArmWakeFromS0 , если драйвер поддерживает интерфейс IPowerPolicyCallbackWakeFromS0 .
Функция обратного вызова OnArmWakeFromS0 обрабатывает операции, относящиеся к конкретному устройству, чтобы позволить устройству обнаруживать внешнее событие, которое активирует сигнал пробуждения в шине. Драйвер шины в режиме ядра обрабатывает операции, связанные с шиной, такие как включение сигнала события управления питанием (PME) шины PCI.
Если драйвер зарегистрировал функцию обратного вызова OnArmWakeFromS0 , платформа вызывает ее, пока устройство все еще находится в состоянии питания устройства D0, прежде чем драйвер шины понижает состояние питания устройства, но после того, как платформа отправит IRP ожидания или пробуждения от имени драйвера.
Процесс выполняется в следующей последовательности:
- Платформа определяет, что устройство бездействует в течение предустановленного периода времени.
- Платформа вызывает функцию обратного вызова OnArmWakeFromS0 драйвера.
- Платформа запрашивает драйвер для шины устройства, чтобы снизить мощность устройства.
Дополнительные сведения о том, когда платформа вызывает эту функцию обратного вызова, см. в статье Сценарии PnP и управления питанием в UMDF.
Вам не нужно предоставлять функцию обратного вызова OnArmWakeFromS0 , если устройство:
- Usb-устройство, поддерживающее "выборочную приостановку".
- Не может быть выключен, пока система остается полностью питанием.
- Не требуются специальные аппаратные операции, позволяющие устройству активировать сигнал пробуждения.
Дополнительные сведения об этой функции обратного вызова см. в статье Поддержка Power-Down простоя в драйверах на основе UMDF.
Требования
Требование | Значение |
---|---|
Дата окончания поддержки | Недоступно в UMDF 2.0 и более поздних версиях. |
Целевая платформа | Персональный компьютер |
Минимальная версия UMDF | 1,9 |
Верхняя часть | wudfddi.h (включая Wudfddi.h) |
См. также раздел
IPowerPolicyCallbackWakeFromS0