# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/usb/realtek,rts5411.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Realtek RTS5411 USB 3.0 hub controller

maintainers:
  - Matthias Kaehlcke <mka@chromium.org>

allOf:
  - $ref: usb-device.yaml#

properties:
  compatible:
    items:
      - enum:
          - usbbda,5411
          - usbbda,411

  reg: true

  '#address-cells':
    const: 1

  '#size-cells':
    const: 0

  vdd-supply:
    description:
      phandle to the regulator that provides power to the hub.

  peer-hub:
    $ref: /schemas/types.yaml#/definitions/phandle
    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
    additionalProperties: true

required:
  - peer-hub
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    usb {
        dr_mode = "host";
        #address-cells = <1>;
        #size-cells = <0>;

        /* 2.0 hub on port 1 */
        hub_2_0: hub@1 {
            compatible = "usbbda,5411";
            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 */
        hub_3_0: hub@2 {
            compatible = "usbbda,411";
            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>;
                    };
                };
            };
        };
    };
