]> git.ipfire.org Git - thirdparty/u-boot.git/blob - Bindings/usb/renesas,usbhs.yaml
Squashed 'dts/upstream/' content from commit aaba2d45dc2a
[thirdparty/u-boot.git] / Bindings / usb / renesas,usbhs.yaml
1 # SPDX-License-Identifier: GPL-2.0-only
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/usb/renesas,usbhs.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Renesas USBHS (HS-USB) controller
8
9 maintainers:
10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
11
12 properties:
13 compatible:
14 oneOf:
15 - items:
16 - const: renesas,usbhs-r7s72100 # RZ/A1
17 - const: renesas,rza1-usbhs
18
19 - items:
20 - enum:
21 - renesas,usbhs-r7s9210 # RZ/A2
22 - renesas,usbhs-r9a07g043 # RZ/G2UL
23 - renesas,usbhs-r9a07g044 # RZ/G2{L,LC}
24 - renesas,usbhs-r9a07g054 # RZ/V2L
25 - const: renesas,rza2-usbhs
26
27 - items:
28 - enum:
29 - renesas,usbhs-r8a7742 # RZ/G1H
30 - renesas,usbhs-r8a7743 # RZ/G1M
31 - renesas,usbhs-r8a7744 # RZ/G1N
32 - renesas,usbhs-r8a7745 # RZ/G1E
33 - renesas,usbhs-r8a77470 # RZ/G1C
34 - renesas,usbhs-r8a7790 # R-Car H2
35 - renesas,usbhs-r8a7791 # R-Car M2-W
36 - renesas,usbhs-r8a7792 # R-Car V2H
37 - renesas,usbhs-r8a7793 # R-Car M2-N
38 - renesas,usbhs-r8a7794 # R-Car E2
39 - const: renesas,rcar-gen2-usbhs
40
41 - items:
42 - enum:
43 - renesas,usbhs-r8a774a1 # RZ/G2M
44 - renesas,usbhs-r8a774b1 # RZ/G2N
45 - renesas,usbhs-r8a774c0 # RZ/G2E
46 - renesas,usbhs-r8a774e1 # RZ/G2H
47 - renesas,usbhs-r8a7795 # R-Car H3
48 - renesas,usbhs-r8a7796 # R-Car M3-W
49 - renesas,usbhs-r8a77961 # R-Car M3-W+
50 - renesas,usbhs-r8a77965 # R-Car M3-N
51 - renesas,usbhs-r8a77990 # R-Car E3
52 - renesas,usbhs-r8a77995 # R-Car D3
53 - const: renesas,rcar-gen3-usbhs
54
55 reg:
56 maxItems: 1
57
58 clocks:
59 minItems: 1
60 items:
61 - description: USB 2.0 host
62 - description: USB 2.0 peripheral
63 - description: USB 2.0 clock selector
64
65 interrupts:
66 minItems: 1
67 maxItems: 4
68
69 renesas,buswait:
70 $ref: /schemas/types.yaml#/definitions/uint32
71 description: |
72 Integer to use BUSWAIT register.
73
74 renesas,enable-gpio:
75 maxItems: 1
76 description: |
77 gpio specifier to check GPIO determining if USB function should be
78 enabled.
79
80 phys:
81 maxItems: 1
82
83 phy-names:
84 items:
85 - const: usb
86
87 dmas:
88 minItems: 2
89 maxItems: 4
90
91 dma-names:
92 minItems: 2
93 items:
94 - const: ch0
95 - const: ch1
96 - const: ch2
97 - const: ch3
98
99 dr_mode: true
100
101 power-domains:
102 maxItems: 1
103
104 resets:
105 minItems: 1
106 items:
107 - description: USB 2.0 host
108 - description: USB 2.0 peripheral
109
110 required:
111 - compatible
112 - reg
113 - clocks
114 - interrupts
115
116 allOf:
117 - if:
118 properties:
119 compatible:
120 contains:
121 enum:
122 - renesas,usbhs-r9a07g043
123 - renesas,usbhs-r9a07g044
124 - renesas,usbhs-r9a07g054
125 then:
126 properties:
127 interrupts:
128 items:
129 - description: U2P_IXL_INT
130 - description: U2P_INT_DMA[0]
131 - description: U2P_INT_DMA[1]
132 - description: U2P_INT_DMAERR
133 required:
134 - resets
135 else:
136 properties:
137 interrupts:
138 maxItems: 1
139
140 additionalProperties: false
141
142 examples:
143 - |
144 #include <dt-bindings/clock/r8a7790-cpg-mssr.h>
145 #include <dt-bindings/interrupt-controller/arm-gic.h>
146 #include <dt-bindings/power/r8a7790-sysc.h>
147
148 usbhs: usb@e6590000 {
149 compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs";
150 reg = <0xe6590000 0x100>;
151 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
152 clocks = <&cpg CPG_MOD 704>;
153 };