xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/mediatek,mt76x8-pinctrl.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1*fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*fac71e4eSEmmanuel Vadot%YAML 1.2
3*fac71e4eSEmmanuel Vadot---
4*fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/mediatek,mt76x8-pinctrl.yaml#
5*fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*fac71e4eSEmmanuel Vadot
7*fac71e4eSEmmanuel Vadottitle: MediaTek MT76X8 Pin Controller
8*fac71e4eSEmmanuel Vadot
9*fac71e4eSEmmanuel Vadotmaintainers:
10*fac71e4eSEmmanuel Vadot  - Arınç ÜNAL <arinc.unal@arinc9.com>
11*fac71e4eSEmmanuel Vadot  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12*fac71e4eSEmmanuel Vadot
13*fac71e4eSEmmanuel Vadotdescription: |
14*fac71e4eSEmmanuel Vadot  MediaTek MT76X8 pin controller for MT7628 and MT7688 SoCs.
15*fac71e4eSEmmanuel Vadot  The pin controller can only set the muxing of pin groups. Muxing individual
16*fac71e4eSEmmanuel Vadot  pins is not supported. There is no pinconf support.
17*fac71e4eSEmmanuel Vadot
18*fac71e4eSEmmanuel Vadotproperties:
19*fac71e4eSEmmanuel Vadot  compatible:
20*fac71e4eSEmmanuel Vadot    const: ralink,mt76x8-pinctrl
21*fac71e4eSEmmanuel Vadot
22*fac71e4eSEmmanuel VadotpatternProperties:
23*fac71e4eSEmmanuel Vadot  '-pins$':
24*fac71e4eSEmmanuel Vadot    type: object
25*fac71e4eSEmmanuel Vadot    additionalProperties: false
26*fac71e4eSEmmanuel Vadot
27*fac71e4eSEmmanuel Vadot    patternProperties:
28*fac71e4eSEmmanuel Vadot      '^(.*-)?pinmux$':
29*fac71e4eSEmmanuel Vadot        type: object
30*fac71e4eSEmmanuel Vadot        description: node for pinctrl.
31*fac71e4eSEmmanuel Vadot        $ref: pinmux-node.yaml#
32*fac71e4eSEmmanuel Vadot        additionalProperties: false
33*fac71e4eSEmmanuel Vadot
34*fac71e4eSEmmanuel Vadot        properties:
35*fac71e4eSEmmanuel Vadot          function:
36*fac71e4eSEmmanuel Vadot            description:
37*fac71e4eSEmmanuel Vadot              A string containing the name of the function to mux to the group.
38*fac71e4eSEmmanuel Vadot            enum: [antenna, debug, gpio, i2c, i2s, jtag, p0led_an, p0led_kn,
39*fac71e4eSEmmanuel Vadot                   p1led_an, p1led_kn, p2led_an, p2led_kn, p3led_an, p3led_kn,
40*fac71e4eSEmmanuel Vadot                   p4led_an, p4led_kn, pcie, pcm, perst, pwm, pwm0, pwm1,
41*fac71e4eSEmmanuel Vadot                   pwm_uart2, refclk, rsvd, sdxc, sdxc d5 d4, sdxc d6, sdxc d7,
42*fac71e4eSEmmanuel Vadot                   spi, spi cs1, spis, sw_r, uart0, uart1, uart2, utif, wdt,
43*fac71e4eSEmmanuel Vadot                   wled_an, wled_kn, -]
44*fac71e4eSEmmanuel Vadot
45*fac71e4eSEmmanuel Vadot          groups:
46*fac71e4eSEmmanuel Vadot            description:
47*fac71e4eSEmmanuel Vadot              An array of strings. Each string contains the name of a group.
48*fac71e4eSEmmanuel Vadot            maxItems: 1
49*fac71e4eSEmmanuel Vadot
50*fac71e4eSEmmanuel Vadot        required:
51*fac71e4eSEmmanuel Vadot          - groups
52*fac71e4eSEmmanuel Vadot          - function
53*fac71e4eSEmmanuel Vadot
54*fac71e4eSEmmanuel Vadot        allOf:
55*fac71e4eSEmmanuel Vadot          - if:
56*fac71e4eSEmmanuel Vadot              properties:
57*fac71e4eSEmmanuel Vadot                function:
58*fac71e4eSEmmanuel Vadot                  const: antenna
59*fac71e4eSEmmanuel Vadot            then:
60*fac71e4eSEmmanuel Vadot              properties:
61*fac71e4eSEmmanuel Vadot                groups:
62*fac71e4eSEmmanuel Vadot                  enum: [i2s]
63*fac71e4eSEmmanuel Vadot
64*fac71e4eSEmmanuel Vadot          - if:
65*fac71e4eSEmmanuel Vadot              properties:
66*fac71e4eSEmmanuel Vadot                function:
67*fac71e4eSEmmanuel Vadot                  const: debug
68*fac71e4eSEmmanuel Vadot            then:
69*fac71e4eSEmmanuel Vadot              properties:
70*fac71e4eSEmmanuel Vadot                groups:
71*fac71e4eSEmmanuel Vadot                  enum: [i2c]
72*fac71e4eSEmmanuel Vadot
73*fac71e4eSEmmanuel Vadot          - if:
74*fac71e4eSEmmanuel Vadot              properties:
75*fac71e4eSEmmanuel Vadot                function:
76*fac71e4eSEmmanuel Vadot                  const: gpio
77*fac71e4eSEmmanuel Vadot            then:
78*fac71e4eSEmmanuel Vadot              properties:
79*fac71e4eSEmmanuel Vadot                groups:
80*fac71e4eSEmmanuel Vadot                  enum: [gpio, i2c, i2s, p0led_an, p0led_kn, p1led_an, p1led_kn,
81*fac71e4eSEmmanuel Vadot                         p2led_an, p2led_kn, p3led_an, p3led_kn, p4led_an,
82*fac71e4eSEmmanuel Vadot                         p4led_kn, perst, pwm0, pwm1, refclk, sdmode, spi,
83*fac71e4eSEmmanuel Vadot                         spi cs1, spis, uart0, uart1, uart2, wdt, wled_an,
84*fac71e4eSEmmanuel Vadot                         wled_kn]
85*fac71e4eSEmmanuel Vadot
86*fac71e4eSEmmanuel Vadot          - if:
87*fac71e4eSEmmanuel Vadot              properties:
88*fac71e4eSEmmanuel Vadot                function:
89*fac71e4eSEmmanuel Vadot                  const: i2c
90*fac71e4eSEmmanuel Vadot            then:
91*fac71e4eSEmmanuel Vadot              properties:
92*fac71e4eSEmmanuel Vadot                groups:
93*fac71e4eSEmmanuel Vadot                  enum: [i2c]
94*fac71e4eSEmmanuel Vadot
95*fac71e4eSEmmanuel Vadot          - if:
96*fac71e4eSEmmanuel Vadot              properties:
97*fac71e4eSEmmanuel Vadot                function:
98*fac71e4eSEmmanuel Vadot                  const: i2s
99*fac71e4eSEmmanuel Vadot            then:
100*fac71e4eSEmmanuel Vadot              properties:
101*fac71e4eSEmmanuel Vadot                groups:
102*fac71e4eSEmmanuel Vadot                  enum: [i2s]
103*fac71e4eSEmmanuel Vadot
104*fac71e4eSEmmanuel Vadot          - if:
105*fac71e4eSEmmanuel Vadot              properties:
106*fac71e4eSEmmanuel Vadot                function:
107*fac71e4eSEmmanuel Vadot                  const: jtag
108*fac71e4eSEmmanuel Vadot            then:
109*fac71e4eSEmmanuel Vadot              properties:
110*fac71e4eSEmmanuel Vadot                groups:
111*fac71e4eSEmmanuel Vadot                  enum: [p0led_an, p0led_kn, p1led_an, p1led_kn, p2led_an,
112*fac71e4eSEmmanuel Vadot                         p2led_kn, p3led_an, p3led_kn, p4led_an, p4led_kn,
113*fac71e4eSEmmanuel Vadot                         sdmode]
114*fac71e4eSEmmanuel Vadot
115*fac71e4eSEmmanuel Vadot          - if:
116*fac71e4eSEmmanuel Vadot              properties:
117*fac71e4eSEmmanuel Vadot                function:
118*fac71e4eSEmmanuel Vadot                  const: p0led_an
119*fac71e4eSEmmanuel Vadot            then:
120*fac71e4eSEmmanuel Vadot              properties:
121*fac71e4eSEmmanuel Vadot                groups:
122*fac71e4eSEmmanuel Vadot                  enum: [p0led_an]
123*fac71e4eSEmmanuel Vadot
124*fac71e4eSEmmanuel Vadot          - if:
125*fac71e4eSEmmanuel Vadot              properties:
126*fac71e4eSEmmanuel Vadot                function:
127*fac71e4eSEmmanuel Vadot                  const: p0led_kn
128*fac71e4eSEmmanuel Vadot            then:
129*fac71e4eSEmmanuel Vadot              properties:
130*fac71e4eSEmmanuel Vadot                groups:
131*fac71e4eSEmmanuel Vadot                  enum: [p0led_kn]
132*fac71e4eSEmmanuel Vadot
133*fac71e4eSEmmanuel Vadot          - if:
134*fac71e4eSEmmanuel Vadot              properties:
135*fac71e4eSEmmanuel Vadot                function:
136*fac71e4eSEmmanuel Vadot                  const: p1led_an
137*fac71e4eSEmmanuel Vadot            then:
138*fac71e4eSEmmanuel Vadot              properties:
139*fac71e4eSEmmanuel Vadot                groups:
140*fac71e4eSEmmanuel Vadot                  enum: [p1led_an]
141*fac71e4eSEmmanuel Vadot
142*fac71e4eSEmmanuel Vadot          - if:
143*fac71e4eSEmmanuel Vadot              properties:
144*fac71e4eSEmmanuel Vadot                function:
145*fac71e4eSEmmanuel Vadot                  const: p1led_kn
146*fac71e4eSEmmanuel Vadot            then:
147*fac71e4eSEmmanuel Vadot              properties:
148*fac71e4eSEmmanuel Vadot                groups:
149*fac71e4eSEmmanuel Vadot                  enum: [p1led_kn]
150*fac71e4eSEmmanuel Vadot
151*fac71e4eSEmmanuel Vadot          - if:
152*fac71e4eSEmmanuel Vadot              properties:
153*fac71e4eSEmmanuel Vadot                function:
154*fac71e4eSEmmanuel Vadot                  const: p2led_an
155*fac71e4eSEmmanuel Vadot            then:
156*fac71e4eSEmmanuel Vadot              properties:
157*fac71e4eSEmmanuel Vadot                groups:
158*fac71e4eSEmmanuel Vadot                  enum: [p2led_an]
159*fac71e4eSEmmanuel Vadot
160*fac71e4eSEmmanuel Vadot          - if:
161*fac71e4eSEmmanuel Vadot              properties:
162*fac71e4eSEmmanuel Vadot                function:
163*fac71e4eSEmmanuel Vadot                  const: p2led_kn
164*fac71e4eSEmmanuel Vadot            then:
165*fac71e4eSEmmanuel Vadot              properties:
166*fac71e4eSEmmanuel Vadot                groups:
167*fac71e4eSEmmanuel Vadot                  enum: [p2led_kn]
168*fac71e4eSEmmanuel Vadot
169*fac71e4eSEmmanuel Vadot          - if:
170*fac71e4eSEmmanuel Vadot              properties:
171*fac71e4eSEmmanuel Vadot                function:
172*fac71e4eSEmmanuel Vadot                  const: p3led_an
173*fac71e4eSEmmanuel Vadot            then:
174*fac71e4eSEmmanuel Vadot              properties:
175*fac71e4eSEmmanuel Vadot                groups:
176*fac71e4eSEmmanuel Vadot                  enum: [p3led_an]
177*fac71e4eSEmmanuel Vadot
178*fac71e4eSEmmanuel Vadot          - if:
179*fac71e4eSEmmanuel Vadot              properties:
180*fac71e4eSEmmanuel Vadot                function:
181*fac71e4eSEmmanuel Vadot                  const: p3led_kn
182*fac71e4eSEmmanuel Vadot            then:
183*fac71e4eSEmmanuel Vadot              properties:
184*fac71e4eSEmmanuel Vadot                groups:
185*fac71e4eSEmmanuel Vadot                  enum: [p3led_kn]
186*fac71e4eSEmmanuel Vadot
187*fac71e4eSEmmanuel Vadot          - if:
188*fac71e4eSEmmanuel Vadot              properties:
189*fac71e4eSEmmanuel Vadot                function:
190*fac71e4eSEmmanuel Vadot                  const: p4led_an
191*fac71e4eSEmmanuel Vadot            then:
192*fac71e4eSEmmanuel Vadot              properties:
193*fac71e4eSEmmanuel Vadot                groups:
194*fac71e4eSEmmanuel Vadot                  enum: [p4led_an]
195*fac71e4eSEmmanuel Vadot
196*fac71e4eSEmmanuel Vadot          - if:
197*fac71e4eSEmmanuel Vadot              properties:
198*fac71e4eSEmmanuel Vadot                function:
199*fac71e4eSEmmanuel Vadot                  const: p4led_kn
200*fac71e4eSEmmanuel Vadot            then:
201*fac71e4eSEmmanuel Vadot              properties:
202*fac71e4eSEmmanuel Vadot                groups:
203*fac71e4eSEmmanuel Vadot                  enum: [p4led_kn]
204*fac71e4eSEmmanuel Vadot
205*fac71e4eSEmmanuel Vadot          - if:
206*fac71e4eSEmmanuel Vadot              properties:
207*fac71e4eSEmmanuel Vadot                function:
208*fac71e4eSEmmanuel Vadot                  const: pcie
209*fac71e4eSEmmanuel Vadot            then:
210*fac71e4eSEmmanuel Vadot              properties:
211*fac71e4eSEmmanuel Vadot                groups:
212*fac71e4eSEmmanuel Vadot                  enum: [gpio]
213*fac71e4eSEmmanuel Vadot
214*fac71e4eSEmmanuel Vadot          - if:
215*fac71e4eSEmmanuel Vadot              properties:
216*fac71e4eSEmmanuel Vadot                function:
217*fac71e4eSEmmanuel Vadot                  const: pcm
218*fac71e4eSEmmanuel Vadot            then:
219*fac71e4eSEmmanuel Vadot              properties:
220*fac71e4eSEmmanuel Vadot                groups:
221*fac71e4eSEmmanuel Vadot                  enum: [i2s]
222*fac71e4eSEmmanuel Vadot
223*fac71e4eSEmmanuel Vadot          - if:
224*fac71e4eSEmmanuel Vadot              properties:
225*fac71e4eSEmmanuel Vadot                function:
226*fac71e4eSEmmanuel Vadot                  const: perst
227*fac71e4eSEmmanuel Vadot            then:
228*fac71e4eSEmmanuel Vadot              properties:
229*fac71e4eSEmmanuel Vadot                groups:
230*fac71e4eSEmmanuel Vadot                  enum: [perst]
231*fac71e4eSEmmanuel Vadot
232*fac71e4eSEmmanuel Vadot          - if:
233*fac71e4eSEmmanuel Vadot              properties:
234*fac71e4eSEmmanuel Vadot                function:
235*fac71e4eSEmmanuel Vadot                  const: pwm
236*fac71e4eSEmmanuel Vadot            then:
237*fac71e4eSEmmanuel Vadot              properties:
238*fac71e4eSEmmanuel Vadot                groups:
239*fac71e4eSEmmanuel Vadot                  enum: [uart1, uart2]
240*fac71e4eSEmmanuel Vadot
241*fac71e4eSEmmanuel Vadot          - if:
242*fac71e4eSEmmanuel Vadot              properties:
243*fac71e4eSEmmanuel Vadot                function:
244*fac71e4eSEmmanuel Vadot                  const: pwm0
245*fac71e4eSEmmanuel Vadot            then:
246*fac71e4eSEmmanuel Vadot              properties:
247*fac71e4eSEmmanuel Vadot                groups:
248*fac71e4eSEmmanuel Vadot                  enum: [pwm0]
249*fac71e4eSEmmanuel Vadot
250*fac71e4eSEmmanuel Vadot          - if:
251*fac71e4eSEmmanuel Vadot              properties:
252*fac71e4eSEmmanuel Vadot                function:
253*fac71e4eSEmmanuel Vadot                  const: pwm1
254*fac71e4eSEmmanuel Vadot            then:
255*fac71e4eSEmmanuel Vadot              properties:
256*fac71e4eSEmmanuel Vadot                groups:
257*fac71e4eSEmmanuel Vadot                  enum: [pwm1]
258*fac71e4eSEmmanuel Vadot
259*fac71e4eSEmmanuel Vadot          - if:
260*fac71e4eSEmmanuel Vadot              properties:
261*fac71e4eSEmmanuel Vadot                function:
262*fac71e4eSEmmanuel Vadot                  const: pwm_uart2
263*fac71e4eSEmmanuel Vadot            then:
264*fac71e4eSEmmanuel Vadot              properties:
265*fac71e4eSEmmanuel Vadot                groups:
266*fac71e4eSEmmanuel Vadot                  enum: [spis]
267*fac71e4eSEmmanuel Vadot
268*fac71e4eSEmmanuel Vadot          - if:
269*fac71e4eSEmmanuel Vadot              properties:
270*fac71e4eSEmmanuel Vadot                function:
271*fac71e4eSEmmanuel Vadot                  const: refclk
272*fac71e4eSEmmanuel Vadot            then:
273*fac71e4eSEmmanuel Vadot              properties:
274*fac71e4eSEmmanuel Vadot                groups:
275*fac71e4eSEmmanuel Vadot                  enum: [gpio, refclk, spi cs1]
276*fac71e4eSEmmanuel Vadot
277*fac71e4eSEmmanuel Vadot          - if:
278*fac71e4eSEmmanuel Vadot              properties:
279*fac71e4eSEmmanuel Vadot                function:
280*fac71e4eSEmmanuel Vadot                  const: rsvd
281*fac71e4eSEmmanuel Vadot            then:
282*fac71e4eSEmmanuel Vadot              properties:
283*fac71e4eSEmmanuel Vadot                groups:
284*fac71e4eSEmmanuel Vadot                  enum: [p0led_an, p0led_kn, wled_an, wled_kn]
285*fac71e4eSEmmanuel Vadot
286*fac71e4eSEmmanuel Vadot          - if:
287*fac71e4eSEmmanuel Vadot              properties:
288*fac71e4eSEmmanuel Vadot                function:
289*fac71e4eSEmmanuel Vadot                  const: sdxc
290*fac71e4eSEmmanuel Vadot            then:
291*fac71e4eSEmmanuel Vadot              properties:
292*fac71e4eSEmmanuel Vadot                groups:
293*fac71e4eSEmmanuel Vadot                  enum: [sdmode]
294*fac71e4eSEmmanuel Vadot
295*fac71e4eSEmmanuel Vadot          - if:
296*fac71e4eSEmmanuel Vadot              properties:
297*fac71e4eSEmmanuel Vadot                function:
298*fac71e4eSEmmanuel Vadot                  const: sdxc d5 d4
299*fac71e4eSEmmanuel Vadot            then:
300*fac71e4eSEmmanuel Vadot              properties:
301*fac71e4eSEmmanuel Vadot                groups:
302*fac71e4eSEmmanuel Vadot                  enum: [uart2]
303*fac71e4eSEmmanuel Vadot
304*fac71e4eSEmmanuel Vadot          - if:
305*fac71e4eSEmmanuel Vadot              properties:
306*fac71e4eSEmmanuel Vadot                function:
307*fac71e4eSEmmanuel Vadot                  const: sdxc d6
308*fac71e4eSEmmanuel Vadot            then:
309*fac71e4eSEmmanuel Vadot              properties:
310*fac71e4eSEmmanuel Vadot                groups:
311*fac71e4eSEmmanuel Vadot                  enum: [pwm1]
312*fac71e4eSEmmanuel Vadot
313*fac71e4eSEmmanuel Vadot          - if:
314*fac71e4eSEmmanuel Vadot              properties:
315*fac71e4eSEmmanuel Vadot                function:
316*fac71e4eSEmmanuel Vadot                  const: sdxc d7
317*fac71e4eSEmmanuel Vadot            then:
318*fac71e4eSEmmanuel Vadot              properties:
319*fac71e4eSEmmanuel Vadot                groups:
320*fac71e4eSEmmanuel Vadot                  enum: [pwm0]
321*fac71e4eSEmmanuel Vadot
322*fac71e4eSEmmanuel Vadot          - if:
323*fac71e4eSEmmanuel Vadot              properties:
324*fac71e4eSEmmanuel Vadot                function:
325*fac71e4eSEmmanuel Vadot                  const: spi
326*fac71e4eSEmmanuel Vadot            then:
327*fac71e4eSEmmanuel Vadot              properties:
328*fac71e4eSEmmanuel Vadot                groups:
329*fac71e4eSEmmanuel Vadot                  enum: [spi]
330*fac71e4eSEmmanuel Vadot
331*fac71e4eSEmmanuel Vadot          - if:
332*fac71e4eSEmmanuel Vadot              properties:
333*fac71e4eSEmmanuel Vadot                function:
334*fac71e4eSEmmanuel Vadot                  const: spi cs1
335*fac71e4eSEmmanuel Vadot            then:
336*fac71e4eSEmmanuel Vadot              properties:
337*fac71e4eSEmmanuel Vadot                groups:
338*fac71e4eSEmmanuel Vadot                  enum: [spi cs1]
339*fac71e4eSEmmanuel Vadot
340*fac71e4eSEmmanuel Vadot          - if:
341*fac71e4eSEmmanuel Vadot              properties:
342*fac71e4eSEmmanuel Vadot                function:
343*fac71e4eSEmmanuel Vadot                  const: spis
344*fac71e4eSEmmanuel Vadot            then:
345*fac71e4eSEmmanuel Vadot              properties:
346*fac71e4eSEmmanuel Vadot                groups:
347*fac71e4eSEmmanuel Vadot                  enum: [spis]
348*fac71e4eSEmmanuel Vadot
349*fac71e4eSEmmanuel Vadot          - if:
350*fac71e4eSEmmanuel Vadot              properties:
351*fac71e4eSEmmanuel Vadot                function:
352*fac71e4eSEmmanuel Vadot                  const: sw_r
353*fac71e4eSEmmanuel Vadot            then:
354*fac71e4eSEmmanuel Vadot              properties:
355*fac71e4eSEmmanuel Vadot                groups:
356*fac71e4eSEmmanuel Vadot                  enum: [uart1]
357*fac71e4eSEmmanuel Vadot
358*fac71e4eSEmmanuel Vadot          - if:
359*fac71e4eSEmmanuel Vadot              properties:
360*fac71e4eSEmmanuel Vadot                function:
361*fac71e4eSEmmanuel Vadot                  const: uart0
362*fac71e4eSEmmanuel Vadot            then:
363*fac71e4eSEmmanuel Vadot              properties:
364*fac71e4eSEmmanuel Vadot                groups:
365*fac71e4eSEmmanuel Vadot                  enum: [uart0]
366*fac71e4eSEmmanuel Vadot
367*fac71e4eSEmmanuel Vadot          - if:
368*fac71e4eSEmmanuel Vadot              properties:
369*fac71e4eSEmmanuel Vadot                function:
370*fac71e4eSEmmanuel Vadot                  const: uart1
371*fac71e4eSEmmanuel Vadot            then:
372*fac71e4eSEmmanuel Vadot              properties:
373*fac71e4eSEmmanuel Vadot                groups:
374*fac71e4eSEmmanuel Vadot                  enum: [uart1]
375*fac71e4eSEmmanuel Vadot
376*fac71e4eSEmmanuel Vadot          - if:
377*fac71e4eSEmmanuel Vadot              properties:
378*fac71e4eSEmmanuel Vadot                function:
379*fac71e4eSEmmanuel Vadot                  const: uart2
380*fac71e4eSEmmanuel Vadot            then:
381*fac71e4eSEmmanuel Vadot              properties:
382*fac71e4eSEmmanuel Vadot                groups:
383*fac71e4eSEmmanuel Vadot                  enum: [uart2]
384*fac71e4eSEmmanuel Vadot
385*fac71e4eSEmmanuel Vadot          - if:
386*fac71e4eSEmmanuel Vadot              properties:
387*fac71e4eSEmmanuel Vadot                function:
388*fac71e4eSEmmanuel Vadot                  const: utif
389*fac71e4eSEmmanuel Vadot            then:
390*fac71e4eSEmmanuel Vadot              properties:
391*fac71e4eSEmmanuel Vadot                groups:
392*fac71e4eSEmmanuel Vadot                  enum: [p1led_an, p1led_kn, p2led_an, p2led_kn, p3led_an,
393*fac71e4eSEmmanuel Vadot                         p3led_kn, p4led_an, p4led_kn, pwm0, pwm1, sdmode, spis]
394*fac71e4eSEmmanuel Vadot
395*fac71e4eSEmmanuel Vadot          - if:
396*fac71e4eSEmmanuel Vadot              properties:
397*fac71e4eSEmmanuel Vadot                function:
398*fac71e4eSEmmanuel Vadot                  const: wdt
399*fac71e4eSEmmanuel Vadot            then:
400*fac71e4eSEmmanuel Vadot              properties:
401*fac71e4eSEmmanuel Vadot                groups:
402*fac71e4eSEmmanuel Vadot                  enum: [wdt]
403*fac71e4eSEmmanuel Vadot
404*fac71e4eSEmmanuel Vadot          - if:
405*fac71e4eSEmmanuel Vadot              properties:
406*fac71e4eSEmmanuel Vadot                function:
407*fac71e4eSEmmanuel Vadot                  const: wled_an
408*fac71e4eSEmmanuel Vadot            then:
409*fac71e4eSEmmanuel Vadot              properties:
410*fac71e4eSEmmanuel Vadot                groups:
411*fac71e4eSEmmanuel Vadot                  enum: [wled_an]
412*fac71e4eSEmmanuel Vadot
413*fac71e4eSEmmanuel Vadot          - if:
414*fac71e4eSEmmanuel Vadot              properties:
415*fac71e4eSEmmanuel Vadot                function:
416*fac71e4eSEmmanuel Vadot                  const: wled_kn
417*fac71e4eSEmmanuel Vadot            then:
418*fac71e4eSEmmanuel Vadot              properties:
419*fac71e4eSEmmanuel Vadot                groups:
420*fac71e4eSEmmanuel Vadot                  enum: [wled_kn]
421*fac71e4eSEmmanuel Vadot
422*fac71e4eSEmmanuel Vadot          - if:
423*fac71e4eSEmmanuel Vadot              properties:
424*fac71e4eSEmmanuel Vadot                function:
425*fac71e4eSEmmanuel Vadot                  const: "-"
426*fac71e4eSEmmanuel Vadot            then:
427*fac71e4eSEmmanuel Vadot              properties:
428*fac71e4eSEmmanuel Vadot                groups:
429*fac71e4eSEmmanuel Vadot                  enum: [i2c, spi cs1, uart0]
430*fac71e4eSEmmanuel Vadot
431*fac71e4eSEmmanuel VadotallOf:
432*fac71e4eSEmmanuel Vadot  - $ref: pinctrl.yaml#
433*fac71e4eSEmmanuel Vadot
434*fac71e4eSEmmanuel Vadotrequired:
435*fac71e4eSEmmanuel Vadot  - compatible
436*fac71e4eSEmmanuel Vadot
437*fac71e4eSEmmanuel VadotadditionalProperties: false
438*fac71e4eSEmmanuel Vadot
439*fac71e4eSEmmanuel Vadotexamples:
440*fac71e4eSEmmanuel Vadot  - |
441*fac71e4eSEmmanuel Vadot    pinctrl {
442*fac71e4eSEmmanuel Vadot      compatible = "ralink,mt76x8-pinctrl";
443*fac71e4eSEmmanuel Vadot
444*fac71e4eSEmmanuel Vadot      i2c_pins: i2c0-pins {
445*fac71e4eSEmmanuel Vadot        pinmux {
446*fac71e4eSEmmanuel Vadot          groups = "i2c";
447*fac71e4eSEmmanuel Vadot          function = "i2c";
448*fac71e4eSEmmanuel Vadot        };
449*fac71e4eSEmmanuel Vadot      };
450*fac71e4eSEmmanuel Vadot    };
451