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


функция обратного вызова 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.

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

None

Remarks

Драйвер клиента 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);
}

Требования

Требование Значение
Целевая платформа Windows
Минимальная версия KMDF 1,0
Минимальная версия UMDF 2,0
Верхняя часть ucxusbdevice.h (включая Ucxclass.h)
IRQL DISPATCH_LEVEL

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

UcxUsbDeviceCreate