EVT_UCX_ROOTHUB_INTERRUPT_TX Rückruffunktion (ucxroothub.h)

Die Implementierung des Clienttreibers, die UCX aufruft, wenn sie eine Anforderung für Informationen zu geänderten Ports empfängt.

Syntax

EVT_UCX_ROOTHUB_INTERRUPT_TX EvtUcxRoothubInterruptTx;

void EvtUcxRoothubInterruptTx(
  [in] UCXROOTHUB UcxRootHub,
  [in] WDFREQUEST Request
)
{...}

Parameter

[in] UcxRootHub

Ein Handle zu einem UCX-Objekt, das den Stammhub darstellt.

[in] Request

Enthält die URB für die Übertragungsanforderung für den Stammhub-Hub.

Rückgabewert

Keine

Bemerkungen

Der UCX-Clienttreiber registriert diese Rückruffunktion mit der USB-Hostcontrollererweiterung (UCX) durch Aufrufen der UcxRootHubCreate-Methode .

Der Parameter "Request" enthält einen Puffer, in dem jeder Bit einem Stammhubport entspricht, wobei das erste Bit dem ersten Port entspricht. Der Clienttreiber legt das entsprechende Bit fest, wenn sich ein Port geändert hat, und schließt dann die Anforderung ab.

Der Clienttreiber gibt den Abschlussstatus in "Anforderung" zurück.

Beispiele

In diesem Codeausschnitt wird gezeigt, wie der Rückruf die Übertragungsanforderung für den Stammhub-Hub extrahiert.

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

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

Anforderungen

   
Zielplattform Windows
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Header ucxroothub.h (include Ucxclass.h)
IRQL DISPATCH_LEVEL