107 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/usb/genesys,gl850g.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Genesys Logic USB hub controller8 9maintainers:10 - Icenowy Zheng <uwu@icenowy.me>11 12properties:13 compatible:14 enum:15 - usb5e3,60816 - usb5e3,61017 - usb5e3,62018 - usb5e3,62619 20 reg: true21 22 reset-gpios:23 description: GPIO controlling the RESET# pin.24 25 vdd-supply:26 description:27 The regulator that provides 3.3V or 5.0V core power to the hub.28 29 peer-hub:30 $ref: /schemas/types.yaml#/definitions/phandle31 description:32 For onboard hub controllers that support USB 3.x and USB 2.0 hubs33 with shared resets and power supplies, this property is used to identify34 the hubs with which these are shared.35 36required:37 - compatible38 - reg39 40allOf:41 - $ref: usb-device.yaml#42 - if:43 properties:44 compatible:45 contains:46 enum:47 - usb5e3,60848 then:49 properties:50 peer-hub: false51 vdd-supply: false52 53 - if:54 properties:55 compatible:56 contains:57 enum:58 - usb5e3,61059 - usb5e3,62060 then:61 properties:62 peer-hub: true63 vdd-supply: true64 65additionalProperties: false66 67examples:68 - |69 #include <dt-bindings/gpio/gpio.h>70 usb {71 dr_mode = "host";72 #address-cells = <1>;73 #size-cells = <0>;74 75 hub: hub@1 {76 compatible = "usb5e3,608";77 reg = <1>;78 reset-gpios = <&pio 7 2 GPIO_ACTIVE_LOW>;79 };80 };81 82 - |83 #include <dt-bindings/gpio/gpio.h>84 usb {85 dr_mode = "host";86 #address-cells = <1>;87 #size-cells = <0>;88 89 /* 2.0 hub on port 1 */90 hub_2_0: hub@1 {91 compatible = "usb5e3,610";92 reg = <1>;93 peer-hub = <&hub_3_0>;94 reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;95 vdd-supply = <&vcc_5v>;96 };97 98 /* 3.1 hub on port 4 */99 hub_3_0: hub@2 {100 compatible = "usb5e3,620";101 reg = <2>;102 peer-hub = <&hub_2_0>;103 reset-gpios = <&gpio 20 GPIO_ACTIVE_LOW>;104 vdd-supply = <&vcc_5v>;105 };106 };107