[PATCH 1/4] dt-bindings: usb: generic-ehci: Allow describing the root hub ports

Arun Iyengar via B4 Relay devnull+aiyengar1990.gmail.com at kernel.org
Mon Nov 9 23:20:06 PST 2026


From: Arun Iyengar <aiyengar1990 at gmail.com>

The USB 2.0 lines and the SuperSpeed lanes of a USB 3 connector don't
always reach the same host controller. On the Rockchip RK3588, the
SuperSpeed-only USB 3.0 host 2 (xHCI) is paired on the board with one
of the separate USB 2.0 hosts (EHCI/OHCI). Only the device tree knows
which EHCI root hub port shares a connector with which SuperSpeed port.

The USB core already reads a hub's OF graph, with one graph port per
downstream port, and uses it for the port connect type. Allow the same
"ports" node on EHCI controllers, so that a root hub port can be linked
to its usb-connector node.

Signed-off-by: Arun Iyengar <aiyengar1990 at gmail.com>
---
 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
index 908b02d9175e..9dcba539d60d 100644
--- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
@@ -160,6 +160,19 @@ properties:
       - host
       - otg
 
+  ports:
+    $ref: /schemas/graph.yaml#/properties/ports
+    description:
+      The root hub's downstream facing ports, linked to the connectors they
+      are wired to. Needed when a connector's SuperSpeed lanes go to a
+      different host controller, which then pairs with the root hub port
+      through the connector.
+
+    patternProperties:
+      "^port@[1-9a-f][0-9a-f]*$":
+        $ref: /schemas/graph.yaml#/properties/port
+        description: Root hub port, numbered from 1.
+
 required:
   - compatible
   - reg

-- 
2.55.0





More information about the Linux-rockchip mailing list