xref: /openbmc/linux/Documentation/devicetree/bindings/pinctrl/ralink,rt3883-pinctrl.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
169ab1e16SArınç ÜNAL# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
269ab1e16SArınç ÜNAL%YAML 1.2
369ab1e16SArınç ÜNAL---
469ab1e16SArınç ÜNAL$id: http://devicetree.org/schemas/pinctrl/ralink,rt3883-pinctrl.yaml#
569ab1e16SArınç ÜNAL$schema: http://devicetree.org/meta-schemas/core.yaml#
669ab1e16SArınç ÜNAL
769ab1e16SArınç ÜNALtitle: Ralink RT3883 Pin Controller
869ab1e16SArınç ÜNAL
969ab1e16SArınç ÜNALmaintainers:
1069ab1e16SArınç ÜNAL  - Arınç ÜNAL <arinc.unal@arinc9.com>
1169ab1e16SArınç ÜNAL  - Sergio Paracuellos <sergio.paracuellos@gmail.com>
1269ab1e16SArınç ÜNAL
13*c911ad22SArınç ÜNALdescription: |
1469ab1e16SArınç ÜNAL  Ralink RT3883 pin controller for RT3883 SoC.
1569ab1e16SArınç ÜNAL  The pin controller can only set the muxing of pin groups. Muxing individual
1669ab1e16SArınç ÜNAL  pins is not supported. There is no pinconf support.
1769ab1e16SArınç ÜNAL
1869ab1e16SArınç ÜNALproperties:
1969ab1e16SArınç ÜNAL  compatible:
2069ab1e16SArınç ÜNAL    const: ralink,rt3883-pinctrl
2169ab1e16SArınç ÜNAL
2269ab1e16SArınç ÜNALpatternProperties:
2369ab1e16SArınç ÜNAL  '-pins$':
2469ab1e16SArınç ÜNAL    type: object
25e19e35a8SArınç ÜNAL    additionalProperties: false
26e19e35a8SArınç ÜNAL
2769ab1e16SArınç ÜNAL    patternProperties:
2869ab1e16SArınç ÜNAL      '^(.*-)?pinmux$':
2969ab1e16SArınç ÜNAL        type: object
3069ab1e16SArınç ÜNAL        description: node for pinctrl.
3169ab1e16SArınç ÜNAL        $ref: pinmux-node.yaml#
32e19e35a8SArınç ÜNAL        additionalProperties: false
3369ab1e16SArınç ÜNAL
3469ab1e16SArınç ÜNAL        properties:
3569ab1e16SArınç ÜNAL          function:
36844bca60SArınç ÜNAL            description:
37844bca60SArınç ÜNAL              A string containing the name of the function to mux to the group.
3869ab1e16SArınç ÜNAL            enum: [ge1, ge2, gpio, gpio i2s, gpio uartf, i2c, i2s uartf, jtag,
3969ab1e16SArınç ÜNAL                   lna a, lna g, mdio, pci-dev, pci-fnc, pci-host1, pci-host2,
4069ab1e16SArınç ÜNAL                   pcm gpio, pcm i2s, pcm uartf, spi, uartf, uartlite]
4169ab1e16SArınç ÜNAL
42844bca60SArınç ÜNAL          groups:
43844bca60SArınç ÜNAL            description:
44844bca60SArınç ÜNAL              An array of strings. Each string contains the name of a group.
45844bca60SArınç ÜNAL            maxItems: 1
46844bca60SArınç ÜNAL
4769ab1e16SArınç ÜNAL        required:
4869ab1e16SArınç ÜNAL          - groups
4969ab1e16SArınç ÜNAL          - function
5069ab1e16SArınç ÜNAL
51844bca60SArınç ÜNAL        allOf:
52844bca60SArınç ÜNAL          - if:
53844bca60SArınç ÜNAL              properties:
54844bca60SArınç ÜNAL                function:
55844bca60SArınç ÜNAL                  const: ge1
56844bca60SArınç ÜNAL            then:
57844bca60SArınç ÜNAL              properties:
58844bca60SArınç ÜNAL                groups:
59844bca60SArınç ÜNAL                  enum: [ge1]
60844bca60SArınç ÜNAL
61844bca60SArınç ÜNAL          - if:
62844bca60SArınç ÜNAL              properties:
63844bca60SArınç ÜNAL                function:
64844bca60SArınç ÜNAL                  const: ge2
65844bca60SArınç ÜNAL            then:
66844bca60SArınç ÜNAL              properties:
67844bca60SArınç ÜNAL                groups:
68844bca60SArınç ÜNAL                  enum: [ge2]
69844bca60SArınç ÜNAL
70844bca60SArınç ÜNAL          - if:
71844bca60SArınç ÜNAL              properties:
72844bca60SArınç ÜNAL                function:
73844bca60SArınç ÜNAL                  const: gpio
74844bca60SArınç ÜNAL            then:
75844bca60SArınç ÜNAL              properties:
76844bca60SArınç ÜNAL                groups:
77844bca60SArınç ÜNAL                  enum: [ge1, ge2, i2c, jtag, lna a, lna g, mdio, pci, spi,
78844bca60SArınç ÜNAL                         uartf, uartlite]
79844bca60SArınç ÜNAL
80844bca60SArınç ÜNAL          - if:
81844bca60SArınç ÜNAL              properties:
82844bca60SArınç ÜNAL                function:
83844bca60SArınç ÜNAL                  const: gpio i2s
84844bca60SArınç ÜNAL            then:
85844bca60SArınç ÜNAL              properties:
86844bca60SArınç ÜNAL                groups:
87844bca60SArınç ÜNAL                  enum: [uartf]
88844bca60SArınç ÜNAL
89844bca60SArınç ÜNAL          - if:
90844bca60SArınç ÜNAL              properties:
91844bca60SArınç ÜNAL                function:
92844bca60SArınç ÜNAL                  const: gpio uartf
93844bca60SArınç ÜNAL            then:
94844bca60SArınç ÜNAL              properties:
95844bca60SArınç ÜNAL                groups:
96844bca60SArınç ÜNAL                  enum: [uartf]
97844bca60SArınç ÜNAL
98844bca60SArınç ÜNAL          - if:
99844bca60SArınç ÜNAL              properties:
100844bca60SArınç ÜNAL                function:
101844bca60SArınç ÜNAL                  const: i2c
102844bca60SArınç ÜNAL            then:
103844bca60SArınç ÜNAL              properties:
104844bca60SArınç ÜNAL                groups:
105844bca60SArınç ÜNAL                  enum: [i2c]
106844bca60SArınç ÜNAL
107844bca60SArınç ÜNAL          - if:
108844bca60SArınç ÜNAL              properties:
109844bca60SArınç ÜNAL                function:
110844bca60SArınç ÜNAL                  const: i2s uartf
111844bca60SArınç ÜNAL            then:
112844bca60SArınç ÜNAL              properties:
113844bca60SArınç ÜNAL                groups:
114844bca60SArınç ÜNAL                  enum: [uartf]
115844bca60SArınç ÜNAL
116844bca60SArınç ÜNAL          - if:
117844bca60SArınç ÜNAL              properties:
118844bca60SArınç ÜNAL                function:
119844bca60SArınç ÜNAL                  const: jtag
120844bca60SArınç ÜNAL            then:
121844bca60SArınç ÜNAL              properties:
122844bca60SArınç ÜNAL                groups:
123844bca60SArınç ÜNAL                  enum: [jtag]
124844bca60SArınç ÜNAL
125844bca60SArınç ÜNAL          - if:
126844bca60SArınç ÜNAL              properties:
127844bca60SArınç ÜNAL                function:
128844bca60SArınç ÜNAL                  const: lna a
129844bca60SArınç ÜNAL            then:
130844bca60SArınç ÜNAL              properties:
131844bca60SArınç ÜNAL                groups:
132844bca60SArınç ÜNAL                  enum: [lna a]
133844bca60SArınç ÜNAL
134844bca60SArınç ÜNAL          - if:
135844bca60SArınç ÜNAL              properties:
136844bca60SArınç ÜNAL                function:
137844bca60SArınç ÜNAL                  const: lna g
138844bca60SArınç ÜNAL            then:
139844bca60SArınç ÜNAL              properties:
140844bca60SArınç ÜNAL                groups:
141844bca60SArınç ÜNAL                  enum: [lna g]
142844bca60SArınç ÜNAL
143844bca60SArınç ÜNAL          - if:
144844bca60SArınç ÜNAL              properties:
145844bca60SArınç ÜNAL                function:
146844bca60SArınç ÜNAL                  const: mdio
147844bca60SArınç ÜNAL            then:
148844bca60SArınç ÜNAL              properties:
149844bca60SArınç ÜNAL                groups:
150844bca60SArınç ÜNAL                  enum: [mdio]
151844bca60SArınç ÜNAL
152844bca60SArınç ÜNAL          - if:
153844bca60SArınç ÜNAL              properties:
154844bca60SArınç ÜNAL                function:
155844bca60SArınç ÜNAL                  const: pci-dev
156844bca60SArınç ÜNAL            then:
157844bca60SArınç ÜNAL              properties:
158844bca60SArınç ÜNAL                groups:
159844bca60SArınç ÜNAL                  enum: [pci]
160844bca60SArınç ÜNAL
161844bca60SArınç ÜNAL          - if:
162844bca60SArınç ÜNAL              properties:
163844bca60SArınç ÜNAL                function:
164844bca60SArınç ÜNAL                  const: pci-fnc
165844bca60SArınç ÜNAL            then:
166844bca60SArınç ÜNAL              properties:
167844bca60SArınç ÜNAL                groups:
168844bca60SArınç ÜNAL                  enum: [pci]
169844bca60SArınç ÜNAL
170844bca60SArınç ÜNAL          - if:
171844bca60SArınç ÜNAL              properties:
172844bca60SArınç ÜNAL                function:
173844bca60SArınç ÜNAL                  const: pci-host1
174844bca60SArınç ÜNAL            then:
175844bca60SArınç ÜNAL              properties:
176844bca60SArınç ÜNAL                groups:
177844bca60SArınç ÜNAL                  enum: [pci]
178844bca60SArınç ÜNAL
179844bca60SArınç ÜNAL          - if:
180844bca60SArınç ÜNAL              properties:
181844bca60SArınç ÜNAL                function:
182844bca60SArınç ÜNAL                  const: pci-host2
183844bca60SArınç ÜNAL            then:
184844bca60SArınç ÜNAL              properties:
185844bca60SArınç ÜNAL                groups:
186844bca60SArınç ÜNAL                  enum: [pci]
187844bca60SArınç ÜNAL
188844bca60SArınç ÜNAL          - if:
189844bca60SArınç ÜNAL              properties:
190844bca60SArınç ÜNAL                function:
191844bca60SArınç ÜNAL                  const: pcm gpio
192844bca60SArınç ÜNAL            then:
193844bca60SArınç ÜNAL              properties:
194844bca60SArınç ÜNAL                groups:
195844bca60SArınç ÜNAL                  enum: [uartf]
196844bca60SArınç ÜNAL
197844bca60SArınç ÜNAL          - if:
198844bca60SArınç ÜNAL              properties:
199844bca60SArınç ÜNAL                function:
200844bca60SArınç ÜNAL                  const: pcm i2s
201844bca60SArınç ÜNAL            then:
202844bca60SArınç ÜNAL              properties:
203844bca60SArınç ÜNAL                groups:
204844bca60SArınç ÜNAL                  enum: [uartf]
205844bca60SArınç ÜNAL
206844bca60SArınç ÜNAL          - if:
207844bca60SArınç ÜNAL              properties:
208844bca60SArınç ÜNAL                function:
209844bca60SArınç ÜNAL                  const: pcm uartf
210844bca60SArınç ÜNAL            then:
211844bca60SArınç ÜNAL              properties:
212844bca60SArınç ÜNAL                groups:
213844bca60SArınç ÜNAL                  enum: [uartf]
214844bca60SArınç ÜNAL
215844bca60SArınç ÜNAL          - if:
216844bca60SArınç ÜNAL              properties:
217844bca60SArınç ÜNAL                function:
218844bca60SArınç ÜNAL                  const: spi
219844bca60SArınç ÜNAL            then:
220844bca60SArınç ÜNAL              properties:
221844bca60SArınç ÜNAL                groups:
222844bca60SArınç ÜNAL                  enum: [spi]
223844bca60SArınç ÜNAL
224844bca60SArınç ÜNAL          - if:
225844bca60SArınç ÜNAL              properties:
226844bca60SArınç ÜNAL                function:
227844bca60SArınç ÜNAL                  const: uartf
228844bca60SArınç ÜNAL            then:
229844bca60SArınç ÜNAL              properties:
230844bca60SArınç ÜNAL                groups:
231844bca60SArınç ÜNAL                  enum: [uartf]
232844bca60SArınç ÜNAL
233844bca60SArınç ÜNAL          - if:
234844bca60SArınç ÜNAL              properties:
235844bca60SArınç ÜNAL                function:
236844bca60SArınç ÜNAL                  const: uartlite
237844bca60SArınç ÜNAL            then:
238844bca60SArınç ÜNAL              properties:
239844bca60SArınç ÜNAL                groups:
240844bca60SArınç ÜNAL                  enum: [uartlite]
241844bca60SArınç ÜNAL
24269ab1e16SArınç ÜNALallOf:
2436c011cc4SArınç ÜNAL  - $ref: pinctrl.yaml#
24469ab1e16SArınç ÜNAL
24569ab1e16SArınç ÜNALrequired:
24669ab1e16SArınç ÜNAL  - compatible
24769ab1e16SArınç ÜNAL
24869ab1e16SArınç ÜNALadditionalProperties: false
24969ab1e16SArınç ÜNAL
25069ab1e16SArınç ÜNALexamples:
25169ab1e16SArınç ÜNAL  - |
25269ab1e16SArınç ÜNAL    pinctrl {
25369ab1e16SArınç ÜNAL      compatible = "ralink,rt3883-pinctrl";
25469ab1e16SArınç ÜNAL
25569ab1e16SArınç ÜNAL      i2c_pins: i2c0-pins {
25669ab1e16SArınç ÜNAL        pinmux {
25769ab1e16SArınç ÜNAL          groups = "i2c";
25869ab1e16SArınç ÜNAL          function = "i2c";
25969ab1e16SArınç ÜNAL        };
26069ab1e16SArınç ÜNAL      };
26169ab1e16SArınç ÜNAL    };
262