blob: f248202ce866b3d58ef7a3c3ed68f209bfd8dbb4 [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/ralink,rt5350-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ralink RT5350 Pin Controller
8
9maintainers:
10 - Arınç ÜNAL <arinc.unal@arinc9.com>
11 - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12
13description: |
14 Ralink RT5350 pin controller for RT5350 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,rt5350-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: [gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag, led,
39 pcm gpio, pcm i2s, pcm uartf, spi, spi_cs1, uartf, uartlite,
40 wdg_cs1]
41
42 groups:
43 description:
44 An array of strings. Each string contains the name of a group.
45 maxItems: 1
46
47 required:
48 - groups
49 - function
50
51 allOf:
52 - if:
53 properties:
54 function:
55 const: gpio
56 then:
57 properties:
58 groups:
59 enum: [i2c, jtag, led, spi, spi_cs1, uartf, uartlite]
60
61 - if:
62 properties:
63 function:
64 const: gpio i2s
65 then:
66 properties:
67 groups:
68 enum: [uartf]
69
70 - if:
71 properties:
72 function:
73 const: gpio uartf
74 then:
75 properties:
76 groups:
77 enum: [uartf]
78
79 - if:
80 properties:
81 function:
82 const: i2c
83 then:
84 properties:
85 groups:
86 enum: [i2c]
87
88 - if:
89 properties:
90 function:
91 const: i2s uartf
92 then:
93 properties:
94 groups:
95 enum: [uartf]
96
97 - if:
98 properties:
99 function:
100 const: jtag
101 then:
102 properties:
103 groups:
104 enum: [jtag]
105
106 - if:
107 properties:
108 function:
109 const: led
110 then:
111 properties:
112 groups:
113 enum: [led]
114
115 - if:
116 properties:
117 function:
118 const: pcm gpio
119 then:
120 properties:
121 groups:
122 enum: [uartf]
123
124 - if:
125 properties:
126 function:
127 const: pcm i2s
128 then:
129 properties:
130 groups:
131 enum: [uartf]
132
133 - if:
134 properties:
135 function:
136 const: pcm uartf
137 then:
138 properties:
139 groups:
140 enum: [uartf]
141
142 - if:
143 properties:
144 function:
145 const: spi
146 then:
147 properties:
148 groups:
149 enum: [spi]
150
151 - if:
152 properties:
153 function:
154 const: spi_cs1
155 then:
156 properties:
157 groups:
158 enum: [spi_cs1]
159
160 - if:
161 properties:
162 function:
163 const: uartf
164 then:
165 properties:
166 groups:
167 enum: [uartf]
168
169 - if:
170 properties:
171 function:
172 const: uartlite
173 then:
174 properties:
175 groups:
176 enum: [uartlite]
177
178 - if:
179 properties:
180 function:
181 const: wdg_cs1
182 then:
183 properties:
184 groups:
185 enum: [spi_cs1]
186
187allOf:
188 - $ref: pinctrl.yaml#
189
190required:
191 - compatible
192
193additionalProperties: false
194
195examples:
196 - |
197 pinctrl {
198 compatible = "ralink,rt5350-pinctrl";
199
200 i2c_pins: i2c0-pins {
201 pinmux {
202 groups = "i2c";
203 function = "i2c";
204 };
205 };
206 };