blob: 6577a61cc07531d56f1a02dec8cde5c14ae1160a [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
Tom Rini762f85b2024-07-20 11:15:10 -060068 additionalProperties: true
Tom Rini6bb92fc2024-05-20 09:54:58 -060069
Tom Rini53633a82024-02-29 12:33:36 -050070required:
71 - peer-hub
72 - compatible
73 - reg
74
75additionalProperties: false
76
77examples:
78 - |
79 usb {
80 dr_mode = "host";
81 #address-cells = <1>;
82 #size-cells = <0>;
83
84 /* 2.0 hub on port 1 */
85 hub_2_0: hub@1 {
86 compatible = "usbbda,5411";
87 reg = <1>;
88 vdd-supply = <&pp3300_hub>;
89 peer-hub = <&hub_3_0>;
Tom Rini6bb92fc2024-05-20 09:54:58 -060090 #address-cells = <1>;
91 #size-cells = <0>;
92 /* USB 2.0 device on port 2 */
93 device@2 {
94 compatible = "usb123,4567";
95 reg = <2>;
96 };
Tom Rini53633a82024-02-29 12:33:36 -050097 };
98
99 /* 3.0 hub on port 2 */
100 hub_3_0: hub@2 {
101 compatible = "usbbda,411";
102 reg = <2>;
103 vdd-supply = <&pp3300_hub>;
104 peer-hub = <&hub_2_0>;
Tom Rini6bb92fc2024-05-20 09:54:58 -0600105
106 ports {
107 #address-cells = <1>;
108 #size-cells = <0>;
109 /* Type-A connector on port 4 */
110 port@4 {
111 reg = <4>;
112 endpoint {
113 remote-endpoint = <&usb_a0_ss>;
114 };
115 };
116 };
Tom Rini53633a82024-02-29 12:33:36 -0500117 };
118 };