EVT_UCX_ROOTHUB_INTERRUPT_TX callback function (ucxroothub.h)
The client driver's implementation that UCX calls when it receives a request for information about changed ports.
Syntax
EVT_UCX_ROOTHUB_INTERRUPT_TX EvtUcxRoothubInterruptTx;
void EvtUcxRoothubInterruptTx(
[in] UCXROOTHUB UcxRootHub,
[in] WDFREQUEST Request
)
{...}
Parameters
[in] UcxRootHub
A handle to a UCX object that represents the root hub.
[in] Request
Contains the URB for the root hub interrupt transfer request.
Return value
None
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;
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Minimum KMDF version | 1.0 |
Minimum UMDF version | 2.0 |
Header | ucxroothub.h (include Ucxclass.h) |
IRQL | DISPATCH_LEVEL |