blob: 591bc0664ec69cf174f117782eba8eac96954f35 [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/pinctrl/mediatek,mt7620-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MediaTek MT7620 Pin Controller
8
9maintainers:
10 - Arınç ÜNAL <arinc.unal@arinc9.com>
11 - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12
13description: |
14 MediaTek MT7620 pin controller for MT7620 SoC.
15 The pin controller can only set the muxing of pin groups. Muxing individual
16 pins is not supported. There is no pinconf support.
17
18properties:
19 compatible:
20 const: ralink,mt7620-pinctrl
21
22patternProperties:
23 '-pins$':
24 type: object
25 additionalProperties: false
26
27 patternProperties:
28 '^(.*-)?pinmux$':
29 type: object
30 description: node for pinctrl.
31 $ref: pinmux-node.yaml#
32 additionalProperties: false
33
34 properties:
35 function:
36 description:
37 A string containing the name of the function to mux to the group.
38 enum: [ephy, gpio, gpio i2s, gpio uartf, i2c, i2s uartf, mdio, nand,
39 pa, pcie refclk, pcie rst, pcm gpio, pcm i2s, pcm uartf,
40 refclk, rgmii1, rgmii2, sd, spi, spi refclk, uartf, uartlite,
41 wdt refclk, wdt rst, wled]
42
43 groups:
44 description:
45 An array of strings. Each string contains the name of a group.
46 maxItems: 1
47
48 required:
49 - groups
50 - function
51
52 allOf:
53 - if:
54 properties:
55 function:
56 const: ephy
57 then:
58 properties:
59 groups:
60 enum: [ephy]
61
62 - if:
63 properties:
64 function:
65 const: gpio
66 then:
67 properties:
68 groups:
69 enum: [ephy, i2c, mdio, nd_sd, pa, pcie, rgmii1, rgmii2, spi,
70 spi refclk, uartf, uartlite, wdt, wled]
71
72 - if:
73 properties:
74 function:
75 const: gpio i2s
76 then:
77 properties:
78 groups:
79 enum: [uartf]
80
81 - if:
82 properties:
83 function:
84 const: gpio uartf
85 then:
86 properties:
87 groups:
88 enum: [uartf]
89
90 - if:
91 properties:
92 function:
93 const: i2c
94 then:
95 properties:
96 groups:
97 enum: [i2c]
98
99 - if:
100 properties:
101 function:
102 const: i2s uartf
103 then:
104 properties:
105 groups:
106 enum: [uartf]
107
108 - if:
109 properties:
110 function:
111 const: mdio
112 then:
113 properties:
114 groups:
115 enum: [mdio]
116
117 - if:
118 properties:
119 function:
120 const: nand
121 then:
122 properties:
123 groups:
124 enum: [nd_sd]
125
126 - if:
127 properties:
128 function:
129 const: pa
130 then:
131 properties:
132 groups:
133 enum: [pa]
134
135 - if:
136 properties:
137 function:
138 const: pcie refclk
139 then:
140 properties:
141 groups:
142 enum: [pcie]
143
144 - if:
145 properties:
146 function:
147 const: pcie rst
148 then:
149 properties:
150 groups:
151 enum: [pcie]
152
153 - if:
154 properties:
155 function:
156 const: pcm gpio
157 then:
158 properties:
159 groups:
160 enum: [uartf]
161
162 - if:
163 properties:
164 function:
165 const: pcm i2s
166 then:
167 properties:
168 groups:
169 enum: [uartf]
170
171 - if:
172 properties:
173 function:
174 const: pcm uartf
175 then:
176 properties:
177 groups:
178 enum: [uartf]
179
180 - if:
181 properties:
182 function:
183 const: refclk
184 then:
185 properties:
186 groups:
187 enum: [mdio]
188
189 - if:
190 properties:
191 function:
192 const: rgmii1
193 then:
194 properties:
195 groups:
196 enum: [rgmii1]
197
198 - if:
199 properties:
200 function:
201 const: rgmii2
202 then:
203 properties:
204 groups:
205 enum: [rgmii2]
206
207 - if:
208 properties:
209 function:
210 const: sd
211 then:
212 properties:
213 groups:
214 enum: [nd_sd]
215
216 - if:
217 properties:
218 function:
219 const: spi
220 then:
221 properties:
222 groups:
223 enum: [spi]
224
225 - if:
226 properties:
227 function:
228 const: spi refclk
229 then:
230 properties:
231 groups:
232 enum: [spi refclk]
233
234 - if:
235 properties:
236 function:
237 const: uartf
238 then:
239 properties:
240 groups:
241 enum: [uartf]
242
243 - if:
244 properties:
245 function:
246 const: uartlite
247 then:
248 properties:
249 groups:
250 enum: [uartlite]
251
252 - if:
253 properties:
254 function:
255 const: wdt refclk
256 then:
257 properties:
258 groups:
259 enum: [wdt]
260
261 - if:
262 properties:
263 function:
264 const: wdt rst
265 then:
266 properties:
267 groups:
268 enum: [wdt]
269
270 - if:
271 properties:
272 function:
273 const: wled
274 then:
275 properties:
276 groups:
277 enum: [wled]
278
279allOf:
280 - $ref: pinctrl.yaml#
281
282required:
283 - compatible
284
285additionalProperties: false
286
287examples:
288 - |
289 pinctrl {
290 compatible = "ralink,mt7620-pinctrl";
291
292 i2c_pins: i2c0-pins {
293 pinmux {
294 groups = "i2c";
295 function = "i2c";
296 };
297 };
298 };