EVT_UCX_USBDEVICE_HUB_INFO callback function (ucxusbdevice.h)

The client driver's implementation that UCX calls to retrieve hub properties.

Syntax

EVT_UCX_USBDEVICE_HUB_INFO EvtUcxUsbdeviceHubInfo;

void EvtUcxUsbdeviceHubInfo(
  [in] UCXCONTROLLER UcxController,
  [in] WDFREQUEST Request
)
{...}

Parameters

[in] UcxController

A handle to the UCX controller that the client driver received in a previous call to the UcxControllerCreate method.

[in] Request

Contains the USBDEVICE_HUB_INFO structure.

Return value

None

Remarks

The UCX client driver registers this callback function with the USB host controller extension (UCX) by calling the UcxUsbDeviceCreate method.

If the USB device is not a hub, do not provide this callback.

The client driver returns completion status in Request. The driver can complete the WDFREQUEST asynchronously.

Examples

VOID
UsbDevice_EvtUcxUsbDeviceHubInfo(
    UCXCONTROLLER      UcxController,
    WDFREQUEST         Request
)

{
    UNREFERENCED_PARAMETER(UcxController);

    DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceHubInfo");

    //
    // Retrieve the USBDEVICE_HUB_INFO pointer from the
    // IOCTL_INTERNAL_USB_USBDEVICE_HUB_INFO WdfRequest.
    //
    WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
    WdfRequestGetParameters(WdfRequest, &wdfRequestParams);

    hubInfo = (PUSBDEVICE_HUB_INFO)wdfRequestParams.Parameters.Others.Arg1;

    ....


    WdfRequestComplete(Request, STATUS_SUCCESS);
}

Requirements

Requirement Value
Target Platform Windows
Minimum KMDF version 1.0
Minimum UMDF version 2.0
Header ucxusbdevice.h (include Ucxclass.h)
IRQL DISPATCH_LEVEL

See also

UCX_USBDEVICE_EVENT_CALLBACKS

UCX_USBDEVICE_EVENT_CALLBACKS_INIT

USBDEVICE_HUB_INFO

UcxUsbDeviceCreate