blob: 0874fc21f66fbba36548774b40d5712aa190c7c5 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/realtek,rts5411.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Realtek RTS5411 USB 3.0 hub controller
8
9maintainers:
10 - Matthias Kaehlcke <mka@chromium.org>
11
12allOf:
13 - $ref: usb-device.yaml#
14
15properties:
16 compatible:
17 items:
18 - enum:
19 - usbbda,5411
20 - usbbda,411
21
22 reg: true
23
Tom Rini6bb92fc2024-05-20 09:54:58 -060024 '#address-cells':
25 const: 1
26
27 '#size-cells':
28 const: 0
29
Tom Rini53633a82024-02-29 12:33:36 -050030 vdd-supply:
31 description:
32 phandle to the regulator that provides power to the hub.
33
34 peer-hub:
35 $ref: /schemas/types.yaml#/definitions/phandle
36 description:
37 phandle to the peer hub on the controller.
38
Tom Rini6bb92fc2024-05-20 09:54:58 -060039 ports:
40 $ref: /schemas/graph.yaml#/properties/ports
41
42 properties:
43 port@1:
44 $ref: /schemas/graph.yaml#/properties/port
45 description:
46 1st downstream facing USB port
47
48 port@2:
49 $ref: /schemas/graph.yaml#/properties/port
50 description:
51 2nd downstream facing USB port
52
53 port@3:
54 $ref: /schemas/graph.yaml#/properties/port
55 description:
56 3rd downstream facing USB port
57
58 port@4:
59 $ref: /schemas/graph.yaml#/properties/port
60 description:
61 4th downstream facing USB port
62
63patternProperties:
64 '^.*@[1-4]$':
65 description: The hard wired USB devices
66 type: object
67 $ref: /schemas/usb/usb-device.yaml
68
Tom Rini53633a82024-02-29 12:33:36 -050069required:
70 - peer-hub
71 - compatible
72 - reg
73
74additionalProperties: false
75
76examples:
77 - |
78 usb {
79 dr_mode = "host";
80 #address-cells = <1>;
81 #size-cells = <0>;
82
83 /* 2.0 hub on port 1 */
84 hub_2_0: hub@1 {
85 compatible = "usbbda,5411";
86 reg = <1>;
87 vdd-supply = <&pp3300_hub>;
88 peer-hub = <&hub_3_0>;
Tom Rini6bb92fc2024-05-20 09:54:58 -060089 #address-cells = <1>;
90 #size-cells = <0>;
91 /* USB 2.0 device on port 2 */
92 device@2 {
93 compatible = "usb123,4567";
94 reg = <2>;
95 };
Tom Rini53633a82024-02-29 12:33:36 -050096 };
97
98 /* 3.0 hub on port 2 */
99 hub_3_0: hub@2 {
100 compatible = "usbbda,411";
101 reg = <2>;
102 vdd-supply = <&pp3300_hub>;
103 peer-hub = <&hub_2_0>;
Tom Rini6bb92fc2024-05-20 09:54:58 -0600104
105 ports {
106 #address-cells = <1>;
107 #size-cells = <0>;
108 /* Type-A connector on port 4 */
109 port@4 {
110 reg = <4>;
111 endpoint {
112 remote-endpoint = <&usb_a0_ss>;
113 };
114 };
115 };
Tom Rini53633a82024-02-29 12:33:36 -0500116 };
117 };