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

Реализация драйвера клиента, которая UCX вызывает сведения о программе об устройстве и конечной точке управления по умолчанию в контроллер.

Синтаксис

EVT_UCX_USBDEVICE_ENABLE EvtUcxUsbdeviceEnable;

VOID EvtUcxUsbdeviceEnable(
  [in] UCXCONTROLLER UcxController,
  [in] WDFREQUEST Request
)
{...}

Параметры

[in] UcxController

Дескриптор контроллера UCX, полученного драйвером клиента в предыдущем вызове метода UcxControllerCreate.

[in] Request

Структура типа USBDEVICE_ENABLE.

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

Никакой

Замечания

Драйвер клиента UCX регистрирует эту функцию обратного вызова с расширением контроллера usb-узла (UCX), вызвав метод UcxUsbDeviceCreate.

Чтобы перевести устройство в требуемое состояние, драйвер контроллера узла взаимодействует с оборудованием, чтобы завершить запрос.

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

По завершении драйвера он завершает WDFREQUEST.

Драйвер клиента возвращает состояние завершения запроса. Драйвер может выполнять WDFREQUEST асинхронно.

Примеры

VOID
UsbDevice_EvtUcxUsbDeviceEnable(
    UCXCONTROLLER      UcxController,
    WDFREQUEST         Request
)
    
{
    UNREFERENCED_PARAMETER(UcxController);

    DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceEnable");

    WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
    WdfRequestGetParameters(WdfRequest, &wdfRequestParams);
    usbDeviceEnable = (PUSBDEVICE_ENABLE)wdfRequestParams.Parameters.Others.Arg1;
    ...

    WdfRequestComplete(Request, STATUS_SUCCESS);
}

Требования

Требование Ценность
целевая платформа Виндоус
минимальная версия KMDF 1.0
минимальная версия UMDF 2.0
заголовка ucxusbdevice.h (include Ucxclass.h)
IRQL DISPATCH_LEVEL

См. также

UcxUsbDeviceCreate