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


функция обратного вызова EVT_UDECX_USB_DEVICE_D0_EXIT (udecxusbdevice.h)

Расширение класса эмуляции USB-устройства (UdeCx) вызывает эту функцию обратного вызова при получении запроса на отправку виртуального USB-устройства в низкое состояние питания.

Синтаксис

EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;

NTSTATUS EvtUdecxUsbDeviceD0Exit(
  [in] WDFDEVICE UdecxWdfDevice,
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}

Параметры

[in] UdecxWdfDevice

Дескриптор объекта устройства платформы, представляющий контроллер, к которому подключено USB-устройство. Драйвер клиента инициализировал этот объект в предыдущем вызове UdecxWdfDeviceAddUsbDeviceEmulation.

[in] UdecxUsbDevice

Дескриптор объекта устройства UDE. Драйвер клиента создал этот объект в предыдущем вызове UdecxUsbDeviceCreate.

[in] WakeSetting

Значение типа UDECX_USB_DEVICE_WAKE_SETTING, указывающее возможность удаленного пробуждения USB-устройства.

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

Если операция выполнена успешно, функция обратного вызова должна возвращать STATUS_SUCCESS или другое значение состояния, для которого NT_SUCCESS(состояние) равно TRUE.

Замечания

Драйвер клиента зарегистрировал функцию в предыдущем вызове UdecxUsbDeviceInitSetStateChangeCallbacks путем указания указателя функции на его реализацию.

В реализации обратного вызова драйвер клиента для USB-устройства, как ожидается, выполнит действия по отправке устройства в состояние низкой мощности. В этой функции драйвер может инициировать пробуждение от состояния низкой связи, приостановки функции или обоих. Для этого драйвер устройства USB 2.0 должен вызвать метод UdecxUsbDeviceSignalWake. Устройства USB 3.0 должны использовать UdecxUsbDeviceSignalFunctionWake.

Запрос питания можно выполнить асинхронно, возвращая STATUS_PENDING, а затем вызывая UdecxUsbDeviceLinkPowerExitComplete с фактическим кодом завершения.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10
минимальный поддерживаемый сервер Windows Server 2016
целевая платформа Виндоус
минимальная версия KMDF 1.15
заголовка udecxusbdevice.h (include Udecx.h)
IRQL <=DISPATCH_LEVEL

См. также

архитектура : эмуляция USB-устройств (UDE)

EVT_UDECX_USB_DEVICE_D0_ENTRY

UdecxUsbDeviceLinkPowerExitComplete

UdecxUsbDeviceSignalWake

запись драйвера клиента UDE