Commit c44d9dab authored by Stephen Boyd's avatar Stephen Boyd Committed by Greg Kroah-Hartman
Browse files

dt-bindings: usb: Add downstream facing ports to realtek binding



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: default avatarStephen Boyd <swboyd@chromium.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20240223005823.3074029-2-swboyd@chromium.org


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 966bf794
Loading
Loading
Loading
Loading
+55 −0
Original line number Diff line number Diff line
@@ -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>;
                    };
                };
            };
        };
    };