EVT_UCX_ROOTHUB_INTERRUPT_TX - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ucxroothub.h

EVT_UCX_ROOTHUB_INTERRUPT_TX EvtUcxRoothubInterruptTx;

VOID EvtUcxRoothubInterruptTx(
  [in] UCXROOTHUB UcxRootHub,
  [in] WDFREQUEST Request
)
{...}
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nc-ucxroothub-evt_ucx_roothub_interrupt_tx)

EVT_UCX_ROOTHUB_INTERRUPT_TX callback function

Description

The client driver's implementation that UCX calls when it receives a request for information about changed ports.

Parameters

UcxRootHub [in]

A handle to a UCX object that represents the root hub.

Request [in]

Contains the URB for the root hub interrupt transfer request.

Remarks

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

The Request parameter contains a buffer in which each bit corresponds to a root hub port, with the first bit corresponding to the first port. The client driver sets the corresponding bit if any port has changed, and then completes the request.

The client driver returns completion status in Request.

Examples

This snippet shows how the callback extracts the root hub interrupt transfer request.

        WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
        WdfRequestGetParameters(WdfRequest, &wdfRequestParams);

        urb = (PURB)wdfRequestParams.Parameters.Others.Arg1;
        transferBuffer = urb->UrbBulkOrInterruptTransfer.TransferBuffer;
        transferBufferLength = urb->UrbBulkOrInterruptTransfer.TransferBufferLength;