1*440b075bSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
231360c28SAnand Moon%YAML 1.2
331360c28SAnand Moon---
431360c28SAnand Moon$id: http://devicetree.org/schemas/usb/vialab,vl817.yaml#
531360c28SAnand Moon$schema: http://devicetree.org/meta-schemas/core.yaml#
631360c28SAnand Moon
731360c28SAnand Moontitle: Via labs VL817 USB 3.1 hub controller
831360c28SAnand Moon
931360c28SAnand Moonmaintainers:
1031360c28SAnand Moon  - Anand Moon <linux.amoon@gmail.com>
1131360c28SAnand Moon
1231360c28SAnand MoonallOf:
1331360c28SAnand Moon  - $ref: usb-device.yaml#
1431360c28SAnand Moon
1531360c28SAnand Moonproperties:
1631360c28SAnand Moon  compatible:
178cb9c36bSAnand Moon    enum:
1831360c28SAnand Moon      - usb2109,2817
1931360c28SAnand Moon      - usb2109,817
2031360c28SAnand Moon
2131360c28SAnand Moon  reg: true
2231360c28SAnand Moon
2331360c28SAnand Moon  reset-gpios:
248cb9c36bSAnand Moon    maxItems: 1
258cb9c36bSAnand Moon    description:
268cb9c36bSAnand Moon      GPIO controlling the RESET# pin.
2731360c28SAnand Moon
2831360c28SAnand Moon  vdd-supply:
2931360c28SAnand Moon    description:
3031360c28SAnand Moon      phandle to the regulator that provides power to the hub.
3131360c28SAnand Moon
3231360c28SAnand Moon  peer-hub:
338cb9c36bSAnand Moon    $ref: /schemas/types.yaml#/definitions/phandle
3431360c28SAnand Moon    description:
3531360c28SAnand Moon      phandle to the peer hub on the controller.
3631360c28SAnand Moon
3731360c28SAnand Moonrequired:
3831360c28SAnand Moon  - compatible
3931360c28SAnand Moon  - reg
408cb9c36bSAnand Moon  - reset-gpios
418cb9c36bSAnand Moon  - vdd-supply
428cb9c36bSAnand Moon  - peer-hub
4331360c28SAnand Moon
4431360c28SAnand MoonadditionalProperties: false
4531360c28SAnand Moon
4631360c28SAnand Moonexamples:
4731360c28SAnand Moon  - |
4831360c28SAnand Moon    #include <dt-bindings/gpio/gpio.h>
4931360c28SAnand Moon
5031360c28SAnand Moon    usb {
5131360c28SAnand Moon        #address-cells = <1>;
5231360c28SAnand Moon        #size-cells = <0>;
5331360c28SAnand Moon
5431360c28SAnand Moon        /* 2.0 hub on port 1 */
5531360c28SAnand Moon        hub_2_0: hub@1 {
5631360c28SAnand Moon            compatible = "usb2109,2817";
5731360c28SAnand Moon            reg = <1>;
5831360c28SAnand Moon            vdd-supply = <&vcc_5v>;
5931360c28SAnand Moon            peer-hub = <&hub_3_0>;
6031360c28SAnand Moon            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
6131360c28SAnand Moon        };
6231360c28SAnand Moon
6331360c28SAnand Moon        /* 3.1 hub on port 4 */
6431360c28SAnand Moon        hub_3_0: hub@2 {
6531360c28SAnand Moon            compatible = "usb2109,817";
6631360c28SAnand Moon            reg = <2>;
6731360c28SAnand Moon            vdd-supply = <&vcc_5v>;
6831360c28SAnand Moon            peer-hub = <&hub_2_0>;
6931360c28SAnand Moon            reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
7031360c28SAnand Moon        };
7131360c28SAnand Moon    };
72