Merge branches 'pm-cpufreq', 'pm-sleep' and 'pm-em'
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / usb / renesas,usb3-peri.yaml
1 # SPDX-License-Identifier: GPL-2.0-only
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/usb/renesas,usb3-peri.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Renesas USB 3.0 Peripheral controller
8
9 maintainers:
10   - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
11
12 properties:
13   compatible:
14     items:
15       - enum:
16           - renesas,r8a774a1-usb3-peri # RZ/G2M
17           - renesas,r8a774b1-usb3-peri # RZ/G2N
18           - renesas,r8a774c0-usb3-peri # RZ/G2E
19           - renesas,r8a774e1-usb3-peri # RZ/G2H
20           - renesas,r8a7795-usb3-peri  # R-Car H3
21           - renesas,r8a7796-usb3-peri  # R-Car M3-W
22           - renesas,r8a77961-usb3-peri # R-Car M3-W+
23           - renesas,r8a77965-usb3-peri # R-Car M3-N
24           - renesas,r8a77990-usb3-peri # R-Car E3
25       - const: renesas,rcar-gen3-usb3-peri
26
27   reg:
28     maxItems: 1
29
30   interrupts:
31     maxItems: 1
32
33   clocks:
34     maxItems: 1
35
36   phys:
37     maxItems: 1
38
39   phy-names:
40     const: usb
41
42   power-domains:
43     maxItems: 1
44
45   resets:
46     maxItems: 1
47
48   usb-role-switch:
49     $ref: /schemas/types.yaml#/definitions/flag
50     description: Support role switch.
51
52   companion:
53     $ref: /schemas/types.yaml#/definitions/phandle
54     description: phandle of a companion.
55
56   ports:
57     $ref: /schemas/graph.yaml#/properties/ports
58     description: |
59       any connector to the data bus of this controller should be modelled
60       using the OF graph bindings specified, if the "usb-role-switch"
61       property is used.
62
63     properties:
64       port@0:
65         $ref: /schemas/graph.yaml#/properties/port
66         description: High Speed (HS) data bus.
67
68       port@1:
69         $ref: /schemas/graph.yaml#/properties/port
70         description: Super Speed (SS) data bus.
71
72     required:
73       - port@0
74       - port@1
75
76 required:
77   - compatible
78   - interrupts
79   - clocks
80
81 additionalProperties: false
82
83 examples:
84   - |
85     #include <dt-bindings/clock/r8a774c0-cpg-mssr.h>
86     #include <dt-bindings/interrupt-controller/arm-gic.h>
87     #include <dt-bindings/power/r8a774c0-sysc.h>
88
89     usb3_peri0: usb@ee020000 {
90         compatible = "renesas,r8a774c0-usb3-peri", "renesas,rcar-gen3-usb3-peri";
91         reg = <0xee020000 0x400>;
92         interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
93         clocks = <&cpg CPG_MOD 328>;
94         companion = <&xhci0>;
95         usb-role-switch;
96
97         ports {
98                 #address-cells = <1>;
99                 #size-cells = <0>;
100                 port@0 {
101                         reg = <0>;
102                         usb3_hs_ep: endpoint {
103                                 remote-endpoint = <&hs_ep>;
104                         };
105                 };
106                 port@1 {
107                         reg = <1>;
108                         usb3_role_switch: endpoint {
109                                 remote-endpoint = <&hd3ss3220_out_ep>;
110                         };
111                 };
112         };
113     };