afdfbff1c233ce897c2db912afe9d2f3ebfb6f42
[openwrt/staging/ldir.git] /
1 From 6e4b5e1fc77513359989112e002e08553d0d8d5c Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= <noltari@gmail.com>
3 Date: Wed, 24 Mar 2021 09:19:12 +0100
4 Subject: [PATCH 11/22] dt-bindings: add BCM6362 pincontroller binding
5 documentation
6 MIME-Version: 1.0
7 Content-Type: text/plain; charset=UTF-8
8 Content-Transfer-Encoding: 8bit
9
10 Add binding documentation for the pincontrol core found in BCM6362 SoCs.
11
12 Co-developed-by: Jonas Gorski <jonas.gorski@gmail.com>
13 Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
14 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
15 Reviewed-by: Rob Herring <robh@kernel.org>
16 Link: https://lore.kernel.org/r/20210324081923.20379-12-noltari@gmail.com
17 Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
18 ---
19 .../pinctrl/brcm,bcm6362-pinctrl.yaml | 206 ++++++++++++++++++
20 1 file changed, 206 insertions(+)
21 create mode 100644 Documentation/devicetree/bindings/pinctrl/brcm,bcm6362-pinctrl.yaml
22
23 --- /dev/null
24 +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm6362-pinctrl.yaml
25 @@ -0,0 +1,206 @@
26 +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
27 +%YAML 1.2
28 +---
29 +$id: http://devicetree.org/schemas/pinctrl/brcm,bcm6362-pinctrl.yaml#
30 +$schema: http://devicetree.org/meta-schemas/core.yaml#
31 +
32 +title: Broadcom BCM6362 pin controller
33 +
34 +maintainers:
35 + - Álvaro Fernández Rojas <noltari@gmail.com>
36 + - Jonas Gorski <jonas.gorski@gmail.com>
37 +
38 +description:
39 + Bindings for Broadcom's BCM6362 memory-mapped pin controller.
40 +
41 +properties:
42 + compatible:
43 + const: brcm,bcm6362-pinctrl
44 +
45 + reg:
46 + maxItems: 2
47 +
48 +patternProperties:
49 + '-pins$':
50 + type: object
51 + $ref: pinmux-node.yaml#
52 +
53 + properties:
54 + function:
55 + enum: [ usb_device_led, sys_irq, serial_led_clk, serial_led_data,
56 + robosw_led_data, robosw_led_clk, robosw_led0, robosw_led1,
57 + inet_led, spi_cs2, spi_cs3, ntr_pulse, uart1_scts,
58 + uart1_srts, uart1_sdin, uart1_sdout, adsl_spi_miso,
59 + adsl_spi_mosi, adsl_spi_clk, adsl_spi_cs, ephy0_led,
60 + ephy1_led, ephy2_led, ephy3_led, ext_irq0, ext_irq1,
61 + ext_irq2, ext_irq3, nand ]
62 +
63 + pins:
64 + enum: [ gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7,
65 + gpio8, gpio9, gpio10, gpio11, gpio12, gpio13, gpio14,
66 + gpio15, gpio16, gpio17, gpio18, gpio19, gpio20, gpio21,
67 + gpio22, gpio23, gpio24, gpio25, gpio26, gpio27, nand_grp ]
68 +
69 +required:
70 + - compatible
71 + - reg
72 +
73 +additionalProperties: false
74 +
75 +examples:
76 + - |
77 + pinctrl@18 {
78 + compatible = "brcm,bcm6362-pinctrl";
79 + reg = <0x18 0x10>, <0x38 0x4>;
80 +
81 + pinctrl_usb_device_led: usb_device_led-pins {
82 + function = "usb_device_led";
83 + pins = "gpio0";
84 + };
85 +
86 + pinctrl_sys_irq: sys_irq-pins {
87 + function = "sys_irq";
88 + pins = "gpio1";
89 + };
90 +
91 + pinctrl_serial_led: serial_led-pins {
92 + pinctrl_serial_led_clk: serial_led_clk-pins {
93 + function = "serial_led_clk";
94 + pins = "gpio2";
95 + };
96 +
97 + pinctrl_serial_led_data: serial_led_data-pins {
98 + function = "serial_led_data";
99 + pins = "gpio3";
100 + };
101 + };
102 +
103 + pinctrl_robosw_led_data: robosw_led_data-pins {
104 + function = "robosw_led_data";
105 + pins = "gpio4";
106 + };
107 +
108 + pinctrl_robosw_led_clk: robosw_led_clk-pins {
109 + function = "robosw_led_clk";
110 + pins = "gpio5";
111 + };
112 +
113 + pinctrl_robosw_led0: robosw_led0-pins {
114 + function = "robosw_led0";
115 + pins = "gpio6";
116 + };
117 +
118 + pinctrl_robosw_led1: robosw_led1-pins {
119 + function = "robosw_led1";
120 + pins = "gpio7";
121 + };
122 +
123 + pinctrl_inet_led: inet_led-pins {
124 + function = "inet_led";
125 + pins = "gpio8";
126 + };
127 +
128 + pinctrl_spi_cs2: spi_cs2-pins {
129 + function = "spi_cs2";
130 + pins = "gpio9";
131 + };
132 +
133 + pinctrl_spi_cs3: spi_cs3-pins {
134 + function = "spi_cs3";
135 + pins = "gpio10";
136 + };
137 +
138 + pinctrl_ntr_pulse: ntr_pulse-pins {
139 + function = "ntr_pulse";
140 + pins = "gpio11";
141 + };
142 +
143 + pinctrl_uart1_scts: uart1_scts-pins {
144 + function = "uart1_scts";
145 + pins = "gpio12";
146 + };
147 +
148 + pinctrl_uart1_srts: uart1_srts-pins {
149 + function = "uart1_srts";
150 + pins = "gpio13";
151 + };
152 +
153 + pinctrl_uart1: uart1-pins {
154 + pinctrl_uart1_sdin: uart1_sdin-pins {
155 + function = "uart1_sdin";
156 + pins = "gpio14";
157 + };
158 +
159 + pinctrl_uart1_sdout: uart1_sdout-pins {
160 + function = "uart1_sdout";
161 + pins = "gpio15";
162 + };
163 + };
164 +
165 + pinctrl_adsl_spi: adsl_spi-pins {
166 + pinctrl_adsl_spi_miso: adsl_spi_miso-pins {
167 + function = "adsl_spi_miso";
168 + pins = "gpio16";
169 + };
170 +
171 + pinctrl_adsl_spi_mosi: adsl_spi_mosi-pins {
172 + function = "adsl_spi_mosi";
173 + pins = "gpio17";
174 + };
175 +
176 + pinctrl_adsl_spi_clk: adsl_spi_clk-pins {
177 + function = "adsl_spi_clk";
178 + pins = "gpio18";
179 + };
180 +
181 + pinctrl_adsl_spi_cs: adsl_spi_cs-pins {
182 + function = "adsl_spi_cs";
183 + pins = "gpio19";
184 + };
185 + };
186 +
187 + pinctrl_ephy0_led: ephy0_led-pins {
188 + function = "ephy0_led";
189 + pins = "gpio20";
190 + };
191 +
192 + pinctrl_ephy1_led: ephy1_led-pins {
193 + function = "ephy1_led";
194 + pins = "gpio21";
195 + };
196 +
197 + pinctrl_ephy2_led: ephy2_led-pins {
198 + function = "ephy2_led";
199 + pins = "gpio22";
200 + };
201 +
202 + pinctrl_ephy3_led: ephy3_led-pins {
203 + function = "ephy3_led";
204 + pins = "gpio23";
205 + };
206 +
207 + pinctrl_ext_irq0: ext_irq0-pins {
208 + function = "ext_irq0";
209 + pins = "gpio24";
210 + };
211 +
212 + pinctrl_ext_irq1: ext_irq1-pins {
213 + function = "ext_irq1";
214 + pins = "gpio25";
215 + };
216 +
217 + pinctrl_ext_irq2: ext_irq2-pins {
218 + function = "ext_irq2";
219 + pins = "gpio26";
220 + };
221 +
222 + pinctrl_ext_irq3: ext_irq3-pins {
223 + function = "ext_irq3";
224 + pins = "gpio27";
225 + };
226 +
227 + pinctrl_nand: nand-pins {
228 + function = "nand";
229 + group = "nand_grp";
230 + };
231 + };