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

title: Genesys Logic USB hub controller

maintainers:
  - Icenowy Zheng <uwu@icenowy.me>

properties:
  compatible:
    enum:
      - usb5e3,608
      - usb5e3,610
      - usb5e3,620
      - usb5e3,626

  reg: true

  reset-gpios:
    description: GPIO controlling the RESET# pin.

  vdd-supply:
    description:
      The regulator that provides 3.3V or 5.0V core power to the hub.

  peer-hub:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      For onboard hub controllers that support USB 3.x and USB 2.0 hubs
      with shared resets and power supplies, this property is used to identify
      the hubs with which these are shared.

required:
  - compatible
  - reg

allOf:
  - $ref: usb-device.yaml#
  - if:
      properties:
        compatible:
          contains:
            enum:
              - usb5e3,608
    then:
      properties:
        peer-hub: false
        vdd-supply: false

  - if:
      properties:
        compatible:
          contains:
            enum:
              - usb5e3,610
              - usb5e3,620
    then:
      properties:
        peer-hub: true
        vdd-supply: true

patternProperties:
  "^.*@[0-9a-f]{1,2}$":
    description: The hard wired USB devices
    type: object
    $ref: /schemas/usb/usb-device.yaml
    additionalProperties: true

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    usb {
        dr_mode = "host";
        #address-cells = <1>;
        #size-cells = <0>;

        hub: hub@1 {
            compatible = "usb5e3,608";
            reg = <1>;
            reset-gpios = <&pio 7 2 GPIO_ACTIVE_LOW>;
        };
    };

  - |
    #include <dt-bindings/gpio/gpio.h>
    usb {
        dr_mode = "host";
        #address-cells = <1>;
        #size-cells = <0>;

        /* 2.0 hub on port 1 */
        hub_2_0: hub@1 {
            compatible = "usb5e3,610";
            reg = <1>;
            peer-hub = <&hub_3_0>;
            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
            vdd-supply = <&vcc_5v>;
        };

        /* 3.1 hub on port 4 */
        hub_3_0: hub@2 {
            compatible = "usb5e3,620";
            reg = <2>;
            peer-hub = <&hub_2_0>;
            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
            vdd-supply = <&vcc_5v>;
        };
    };
