blob: 43b33dbf115b51bc92ad4144c2dd5306cb04c13b [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,rt2880-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ralink RT2880 Pin Controller
8
9maintainers:
10 - Arınç ÜNAL <arinc.unal@arinc9.com>
11 - Sergio Paracuellos <sergio.paracuellos@gmail.com>
12
13description: |
14 Ralink RT2880 pin controller for RT2880 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,rt2880-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, i2c, spi, uartlite, jtag, mdio, sdram, pci]
39
40 groups:
41 description:
42 An array of strings. Each string contains the name of a group.
43 maxItems: 1
44
45 required:
46 - groups
47 - function
48
49 allOf:
50 - if:
51 properties:
52 function:
53 const: gpio
54 then:
55 properties:
56 groups:
57 enum: [i2c, spi, uartlite, jtag, mdio, sdram, pci]
58
59 - if:
60 properties:
61 function:
62 const: i2c
63 then:
64 properties:
65 groups:
66 enum: [i2c]
67
68 - if:
69 properties:
70 function:
71 const: spi
72 then:
73 properties:
74 groups:
75 enum: [spi]
76
77 - if:
78 properties:
79 function:
80 const: uartlite
81 then:
82 properties:
83 groups:
84 enum: [uartlite]
85
86 - if:
87 properties:
88 function:
89 const: jtag
90 then:
91 properties:
92 groups:
93 enum: [jtag]
94
95 - if:
96 properties:
97 function:
98 const: mdio
99 then:
100 properties:
101 groups:
102 enum: [mdio]
103
104 - if:
105 properties:
106 function:
107 const: sdram
108 then:
109 properties:
110 groups:
111 enum: [sdram]
112
113 - if:
114 properties:
115 function:
116 const: pci
117 then:
118 properties:
119 groups:
120 enum: [pci]
121
122allOf:
123 - $ref: pinctrl.yaml#
124
125required:
126 - compatible
127
128additionalProperties: false
129
130examples:
131 - |
132 pinctrl {
133 compatible = "ralink,rt2880-pinctrl";
134
135 i2c_pins: i2c0-pins {
136 pinmux {
137 groups = "i2c";
138 function = "i2c";
139 };
140 };
141 };