Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
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 controller
8
9maintainers:
10 - Icenowy Zheng <uwu@icenowy.me>
11
12properties:
13 compatible:
14 enum:
15 - usb5e3,608
16 - usb5e3,610
17 - usb5e3,620
18 - usb5e3,626
19
20 reg: true
21
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/phandle
31 description:
32 For onboard hub controllers that support USB 3.x and USB 2.0 hubs
33 with shared resets and power supplies, this property is used to identify
34 the hubs with which these are shared.
35
36required:
37 - compatible
38 - reg
39
40allOf:
41 - $ref: usb-device.yaml#
42 - if:
43 properties:
44 compatible:
45 contains:
46 enum:
47 - usb5e3,608
48 then:
49 properties:
50 peer-hub: false
51 vdd-supply: false
52
53 - if:
54 properties:
55 compatible:
56 contains:
57 enum:
58 - usb5e3,610
59 - usb5e3,620
60 then:
61 properties:
62 peer-hub: true
63 vdd-supply: true
64
65additionalProperties: false
66
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 };