Message ID | 20240223005823.3074029-2-swboyd@chromium.org (mailing list archive) |
---|---|
State | Accepted |
Commit | c44d9dab31d6a9b55731c986f2d47f35ab772669 |
Headers | show |
Series | usb: Set connect_type of hub ports based on DT | expand |
On Thu, Feb 22, 2024 at 04:58:20PM -0800, Stephen Boyd wrote: > Add a graph with 4 output endpoints to this hub binding to support the > scenario where a downstream facing port is connected to a device that > isn't a connector or a USB device with a VID:PID. This will be used to > connect downstream facing ports to USB type-c switches so the USB > superspeed and high speed lanes can be put onto USB connectors. > > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> > Cc: Conor Dooley <conor+dt@kernel.org> > Cc: Matthias Kaehlcke <mka@chromium.org> > Cc: <linux-usb@vger.kernel.org> > Cc: <devicetree@vger.kernel.org> > Cc: Pin-yen Lin <treapking@chromium.org> > Cc: maciek swiech <drmasquatch@google.com> > Signed-off-by: Stephen Boyd <swboyd@chromium.org> > --- > .../bindings/usb/realtek,rts5411.yaml | 55 +++++++++++++++++++ > 1 file changed, 55 insertions(+) I think we need a usb-hub.yaml schema... For now, Reviewed-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/usb/realtek,rts5411.yaml b/Documentation/devicetree/bindings/usb/realtek,rts5411.yaml index f0784d2e86da..0874fc21f66f 100644 --- a/Documentation/devicetree/bindings/usb/realtek,rts5411.yaml +++ b/Documentation/devicetree/bindings/usb/realtek,rts5411.yaml @@ -21,6 +21,12 @@ properties: reg: true + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + vdd-supply: description: phandle to the regulator that provides power to the hub. @@ -30,6 +36,36 @@ properties: description: phandle to the peer hub on the controller. + ports: + $ref: /schemas/graph.yaml#/properties/ports + + properties: + port@1: + $ref: /schemas/graph.yaml#/properties/port + description: + 1st downstream facing USB port + + port@2: + $ref: /schemas/graph.yaml#/properties/port + description: + 2nd downstream facing USB port + + port@3: + $ref: /schemas/graph.yaml#/properties/port + description: + 3rd downstream facing USB port + + port@4: + $ref: /schemas/graph.yaml#/properties/port + description: + 4th downstream facing USB port + +patternProperties: + '^.*@[1-4]$': + description: The hard wired USB devices + type: object + $ref: /schemas/usb/usb-device.yaml + required: - peer-hub - compatible @@ -50,6 +86,13 @@ examples: reg = <1>; vdd-supply = <&pp3300_hub>; peer-hub = <&hub_3_0>; + #address-cells = <1>; + #size-cells = <0>; + /* USB 2.0 device on port 2 */ + device@2 { + compatible = "usb123,4567"; + reg = <2>; + }; }; /* 3.0 hub on port 2 */ @@ -58,5 +101,17 @@ examples: reg = <2>; vdd-supply = <&pp3300_hub>; peer-hub = <&hub_2_0>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + /* Type-A connector on port 4 */ + port@4 { + reg = <4>; + endpoint { + remote-endpoint = <&usb_a0_ss>; + }; + }; + }; }; };
Add a graph with 4 output endpoints to this hub binding to support the scenario where a downstream facing port is connected to a device that isn't a connector or a USB device with a VID:PID. This will be used to connect downstream facing ports to USB type-c switches so the USB superspeed and high speed lanes can be put onto USB connectors. Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: Matthias Kaehlcke <mka@chromium.org> Cc: <linux-usb@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: Pin-yen Lin <treapking@chromium.org> Cc: maciek swiech <drmasquatch@google.com> Signed-off-by: Stephen Boyd <swboyd@chromium.org> --- .../bindings/usb/realtek,rts5411.yaml | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+)