xref: /linux/Documentation/devicetree/bindings/mfd/brcm,bcm6362-gpio-sysctl.yaml (revision 7ca989eafbd6ce1c216a775556c4893baab1959b)
1*7ca989eaSÁlvaro Fernández Rojas# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*7ca989eaSÁlvaro Fernández Rojas%YAML 1.2
3*7ca989eaSÁlvaro Fernández Rojas---
4*7ca989eaSÁlvaro Fernández Rojas$id: http://devicetree.org/schemas/mfd/brcm,bcm6362-gpio-sysctl.yaml#
5*7ca989eaSÁlvaro Fernández Rojas$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7ca989eaSÁlvaro Fernández Rojas
7*7ca989eaSÁlvaro Fernández Rojastitle: Broadcom BCM6362 GPIO System Controller Device Tree Bindings
8*7ca989eaSÁlvaro Fernández Rojas
9*7ca989eaSÁlvaro Fernández Rojasmaintainers:
10*7ca989eaSÁlvaro Fernández Rojas  - Álvaro Fernández Rojas <noltari@gmail.com>
11*7ca989eaSÁlvaro Fernández Rojas  - Jonas Gorski <jonas.gorski@gmail.com>
12*7ca989eaSÁlvaro Fernández Rojas
13*7ca989eaSÁlvaro Fernández Rojasdescription:
14*7ca989eaSÁlvaro Fernández Rojas  Broadcom BCM6362 SoC GPIO system controller which provides a register map
15*7ca989eaSÁlvaro Fernández Rojas  for controlling the GPIO and pins of the SoC.
16*7ca989eaSÁlvaro Fernández Rojas
17*7ca989eaSÁlvaro Fernández Rojasproperties:
18*7ca989eaSÁlvaro Fernández Rojas  "#address-cells": true
19*7ca989eaSÁlvaro Fernández Rojas
20*7ca989eaSÁlvaro Fernández Rojas  "#size-cells": true
21*7ca989eaSÁlvaro Fernández Rojas
22*7ca989eaSÁlvaro Fernández Rojas  compatible:
23*7ca989eaSÁlvaro Fernández Rojas    items:
24*7ca989eaSÁlvaro Fernández Rojas      - const: brcm,bcm6362-gpio-sysctl
25*7ca989eaSÁlvaro Fernández Rojas      - const: syscon
26*7ca989eaSÁlvaro Fernández Rojas      - const: simple-mfd
27*7ca989eaSÁlvaro Fernández Rojas
28*7ca989eaSÁlvaro Fernández Rojas  ranges:
29*7ca989eaSÁlvaro Fernández Rojas    maxItems: 1
30*7ca989eaSÁlvaro Fernández Rojas
31*7ca989eaSÁlvaro Fernández Rojas  reg:
32*7ca989eaSÁlvaro Fernández Rojas    maxItems: 1
33*7ca989eaSÁlvaro Fernández Rojas
34*7ca989eaSÁlvaro Fernández RojaspatternProperties:
35*7ca989eaSÁlvaro Fernández Rojas  "^gpio@[0-9a-f]+$":
36*7ca989eaSÁlvaro Fernández Rojas    # Child node
37*7ca989eaSÁlvaro Fernández Rojas    type: object
38*7ca989eaSÁlvaro Fernández Rojas    $ref: "../gpio/brcm,bcm6345-gpio.yaml"
39*7ca989eaSÁlvaro Fernández Rojas    description:
40*7ca989eaSÁlvaro Fernández Rojas      GPIO controller for the SoC GPIOs. This child node definition
41*7ca989eaSÁlvaro Fernández Rojas      should follow the bindings specified in
42*7ca989eaSÁlvaro Fernández Rojas      Documentation/devicetree/bindings/gpio/brcm,bcm6345-gpio.yaml.
43*7ca989eaSÁlvaro Fernández Rojas
44*7ca989eaSÁlvaro Fernández Rojas  "^pinctrl@[0-9a-f]+$":
45*7ca989eaSÁlvaro Fernández Rojas    # Child node
46*7ca989eaSÁlvaro Fernández Rojas    type: object
47*7ca989eaSÁlvaro Fernández Rojas    $ref: "../pinctrl/brcm,bcm6362-pinctrl.yaml"
48*7ca989eaSÁlvaro Fernández Rojas    description:
49*7ca989eaSÁlvaro Fernández Rojas      Pin controller for the SoC pins. This child node definition
50*7ca989eaSÁlvaro Fernández Rojas      should follow the bindings specified in
51*7ca989eaSÁlvaro Fernández Rojas      Documentation/devicetree/bindings/pinctrl/brcm,bcm6362-pinctrl.yaml.
52*7ca989eaSÁlvaro Fernández Rojas
53*7ca989eaSÁlvaro Fernández Rojasrequired:
54*7ca989eaSÁlvaro Fernández Rojas  - "#address-cells"
55*7ca989eaSÁlvaro Fernández Rojas  - compatible
56*7ca989eaSÁlvaro Fernández Rojas  - ranges
57*7ca989eaSÁlvaro Fernández Rojas  - reg
58*7ca989eaSÁlvaro Fernández Rojas  - "#size-cells"
59*7ca989eaSÁlvaro Fernández Rojas
60*7ca989eaSÁlvaro Fernández RojasadditionalProperties: false
61*7ca989eaSÁlvaro Fernández Rojas
62*7ca989eaSÁlvaro Fernández Rojasexamples:
63*7ca989eaSÁlvaro Fernández Rojas  - |
64*7ca989eaSÁlvaro Fernández Rojas    syscon@10000080 {
65*7ca989eaSÁlvaro Fernández Rojas      #address-cells = <1>;
66*7ca989eaSÁlvaro Fernández Rojas      #size-cells = <1>;
67*7ca989eaSÁlvaro Fernández Rojas      compatible = "brcm,bcm6362-gpio-sysctl", "syscon", "simple-mfd";
68*7ca989eaSÁlvaro Fernández Rojas      reg = <0x10000080 0x80>;
69*7ca989eaSÁlvaro Fernández Rojas      ranges = <0 0x10000080 0x80>;
70*7ca989eaSÁlvaro Fernández Rojas
71*7ca989eaSÁlvaro Fernández Rojas      gpio@0 {
72*7ca989eaSÁlvaro Fernández Rojas        compatible = "brcm,bcm6362-gpio";
73*7ca989eaSÁlvaro Fernández Rojas        reg-names = "dirout", "dat";
74*7ca989eaSÁlvaro Fernández Rojas        reg = <0x0 0x8>, <0x8 0x8>;
75*7ca989eaSÁlvaro Fernández Rojas
76*7ca989eaSÁlvaro Fernández Rojas        gpio-controller;
77*7ca989eaSÁlvaro Fernández Rojas        gpio-ranges = <&pinctrl 0 0 48>;
78*7ca989eaSÁlvaro Fernández Rojas        #gpio-cells = <2>;
79*7ca989eaSÁlvaro Fernández Rojas      };
80*7ca989eaSÁlvaro Fernández Rojas
81*7ca989eaSÁlvaro Fernández Rojas      pinctrl: pinctrl@18 {
82*7ca989eaSÁlvaro Fernández Rojas        compatible = "brcm,bcm6362-pinctrl";
83*7ca989eaSÁlvaro Fernández Rojas        reg = <0x18 0x10>, <0x38 0x4>;
84*7ca989eaSÁlvaro Fernández Rojas
85*7ca989eaSÁlvaro Fernández Rojas        pinctrl_usb_device_led: usb_device_led-pins {
86*7ca989eaSÁlvaro Fernández Rojas          function = "usb_device_led";
87*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio0";
88*7ca989eaSÁlvaro Fernández Rojas        };
89*7ca989eaSÁlvaro Fernández Rojas
90*7ca989eaSÁlvaro Fernández Rojas        pinctrl_sys_irq: sys_irq-pins {
91*7ca989eaSÁlvaro Fernández Rojas          function = "sys_irq";
92*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio1";
93*7ca989eaSÁlvaro Fernández Rojas        };
94*7ca989eaSÁlvaro Fernández Rojas
95*7ca989eaSÁlvaro Fernández Rojas        pinctrl_serial_led: serial_led-pins {
96*7ca989eaSÁlvaro Fernández Rojas          pinctrl_serial_led_clk: serial_led_clk-pins {
97*7ca989eaSÁlvaro Fernández Rojas            function = "serial_led_clk";
98*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio2";
99*7ca989eaSÁlvaro Fernández Rojas          };
100*7ca989eaSÁlvaro Fernández Rojas
101*7ca989eaSÁlvaro Fernández Rojas          pinctrl_serial_led_data: serial_led_data-pins {
102*7ca989eaSÁlvaro Fernández Rojas            function = "serial_led_data";
103*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio3";
104*7ca989eaSÁlvaro Fernández Rojas          };
105*7ca989eaSÁlvaro Fernández Rojas        };
106*7ca989eaSÁlvaro Fernández Rojas
107*7ca989eaSÁlvaro Fernández Rojas        pinctrl_robosw_led_data: robosw_led_data-pins {
108*7ca989eaSÁlvaro Fernández Rojas          function = "robosw_led_data";
109*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio4";
110*7ca989eaSÁlvaro Fernández Rojas        };
111*7ca989eaSÁlvaro Fernández Rojas
112*7ca989eaSÁlvaro Fernández Rojas        pinctrl_robosw_led_clk: robosw_led_clk-pins {
113*7ca989eaSÁlvaro Fernández Rojas          function = "robosw_led_clk";
114*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio5";
115*7ca989eaSÁlvaro Fernández Rojas        };
116*7ca989eaSÁlvaro Fernández Rojas
117*7ca989eaSÁlvaro Fernández Rojas        pinctrl_robosw_led0: robosw_led0-pins {
118*7ca989eaSÁlvaro Fernández Rojas          function = "robosw_led0";
119*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio6";
120*7ca989eaSÁlvaro Fernández Rojas        };
121*7ca989eaSÁlvaro Fernández Rojas
122*7ca989eaSÁlvaro Fernández Rojas        pinctrl_robosw_led1: robosw_led1-pins {
123*7ca989eaSÁlvaro Fernández Rojas          function = "robosw_led1";
124*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio7";
125*7ca989eaSÁlvaro Fernández Rojas        };
126*7ca989eaSÁlvaro Fernández Rojas
127*7ca989eaSÁlvaro Fernández Rojas        pinctrl_inet_led: inet_led-pins {
128*7ca989eaSÁlvaro Fernández Rojas          function = "inet_led";
129*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio8";
130*7ca989eaSÁlvaro Fernández Rojas        };
131*7ca989eaSÁlvaro Fernández Rojas
132*7ca989eaSÁlvaro Fernández Rojas        pinctrl_spi_cs2: spi_cs2-pins {
133*7ca989eaSÁlvaro Fernández Rojas          function = "spi_cs2";
134*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio9";
135*7ca989eaSÁlvaro Fernández Rojas        };
136*7ca989eaSÁlvaro Fernández Rojas
137*7ca989eaSÁlvaro Fernández Rojas        pinctrl_spi_cs3: spi_cs3-pins {
138*7ca989eaSÁlvaro Fernández Rojas          function = "spi_cs3";
139*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio10";
140*7ca989eaSÁlvaro Fernández Rojas        };
141*7ca989eaSÁlvaro Fernández Rojas
142*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ntr_pulse: ntr_pulse-pins {
143*7ca989eaSÁlvaro Fernández Rojas          function = "ntr_pulse";
144*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio11";
145*7ca989eaSÁlvaro Fernández Rojas        };
146*7ca989eaSÁlvaro Fernández Rojas
147*7ca989eaSÁlvaro Fernández Rojas        pinctrl_uart1_scts: uart1_scts-pins {
148*7ca989eaSÁlvaro Fernández Rojas          function = "uart1_scts";
149*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio12";
150*7ca989eaSÁlvaro Fernández Rojas        };
151*7ca989eaSÁlvaro Fernández Rojas
152*7ca989eaSÁlvaro Fernández Rojas        pinctrl_uart1_srts: uart1_srts-pins {
153*7ca989eaSÁlvaro Fernández Rojas          function = "uart1_srts";
154*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio13";
155*7ca989eaSÁlvaro Fernández Rojas        };
156*7ca989eaSÁlvaro Fernández Rojas
157*7ca989eaSÁlvaro Fernández Rojas        pinctrl_uart1: uart1-pins {
158*7ca989eaSÁlvaro Fernández Rojas          pinctrl_uart1_sdin: uart1_sdin-pins {
159*7ca989eaSÁlvaro Fernández Rojas            function = "uart1_sdin";
160*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio14";
161*7ca989eaSÁlvaro Fernández Rojas          };
162*7ca989eaSÁlvaro Fernández Rojas
163*7ca989eaSÁlvaro Fernández Rojas          pinctrl_uart1_sdout: uart1_sdout-pins {
164*7ca989eaSÁlvaro Fernández Rojas            function = "uart1_sdout";
165*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio15";
166*7ca989eaSÁlvaro Fernández Rojas          };
167*7ca989eaSÁlvaro Fernández Rojas        };
168*7ca989eaSÁlvaro Fernández Rojas
169*7ca989eaSÁlvaro Fernández Rojas        pinctrl_adsl_spi: adsl_spi-pins {
170*7ca989eaSÁlvaro Fernández Rojas          pinctrl_adsl_spi_miso: adsl_spi_miso-pins {
171*7ca989eaSÁlvaro Fernández Rojas            function = "adsl_spi_miso";
172*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio16";
173*7ca989eaSÁlvaro Fernández Rojas          };
174*7ca989eaSÁlvaro Fernández Rojas
175*7ca989eaSÁlvaro Fernández Rojas          pinctrl_adsl_spi_mosi: adsl_spi_mosi-pins {
176*7ca989eaSÁlvaro Fernández Rojas            function = "adsl_spi_mosi";
177*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio17";
178*7ca989eaSÁlvaro Fernández Rojas          };
179*7ca989eaSÁlvaro Fernández Rojas
180*7ca989eaSÁlvaro Fernández Rojas          pinctrl_adsl_spi_clk: adsl_spi_clk-pins {
181*7ca989eaSÁlvaro Fernández Rojas            function = "adsl_spi_clk";
182*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio18";
183*7ca989eaSÁlvaro Fernández Rojas          };
184*7ca989eaSÁlvaro Fernández Rojas
185*7ca989eaSÁlvaro Fernández Rojas          pinctrl_adsl_spi_cs: adsl_spi_cs-pins {
186*7ca989eaSÁlvaro Fernández Rojas            function = "adsl_spi_cs";
187*7ca989eaSÁlvaro Fernández Rojas            pins = "gpio19";
188*7ca989eaSÁlvaro Fernández Rojas          };
189*7ca989eaSÁlvaro Fernández Rojas        };
190*7ca989eaSÁlvaro Fernández Rojas
191*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ephy0_led: ephy0_led-pins {
192*7ca989eaSÁlvaro Fernández Rojas          function = "ephy0_led";
193*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio20";
194*7ca989eaSÁlvaro Fernández Rojas        };
195*7ca989eaSÁlvaro Fernández Rojas
196*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ephy1_led: ephy1_led-pins {
197*7ca989eaSÁlvaro Fernández Rojas          function = "ephy1_led";
198*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio21";
199*7ca989eaSÁlvaro Fernández Rojas        };
200*7ca989eaSÁlvaro Fernández Rojas
201*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ephy2_led: ephy2_led-pins {
202*7ca989eaSÁlvaro Fernández Rojas          function = "ephy2_led";
203*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio22";
204*7ca989eaSÁlvaro Fernández Rojas        };
205*7ca989eaSÁlvaro Fernández Rojas
206*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ephy3_led: ephy3_led-pins {
207*7ca989eaSÁlvaro Fernández Rojas          function = "ephy3_led";
208*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio23";
209*7ca989eaSÁlvaro Fernández Rojas        };
210*7ca989eaSÁlvaro Fernández Rojas
211*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ext_irq0: ext_irq0-pins {
212*7ca989eaSÁlvaro Fernández Rojas          function = "ext_irq0";
213*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio24";
214*7ca989eaSÁlvaro Fernández Rojas        };
215*7ca989eaSÁlvaro Fernández Rojas
216*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ext_irq1: ext_irq1-pins {
217*7ca989eaSÁlvaro Fernández Rojas          function = "ext_irq1";
218*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio25";
219*7ca989eaSÁlvaro Fernández Rojas        };
220*7ca989eaSÁlvaro Fernández Rojas
221*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ext_irq2: ext_irq2-pins {
222*7ca989eaSÁlvaro Fernández Rojas          function = "ext_irq2";
223*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio26";
224*7ca989eaSÁlvaro Fernández Rojas        };
225*7ca989eaSÁlvaro Fernández Rojas
226*7ca989eaSÁlvaro Fernández Rojas        pinctrl_ext_irq3: ext_irq3-pins {
227*7ca989eaSÁlvaro Fernández Rojas          function = "ext_irq3";
228*7ca989eaSÁlvaro Fernández Rojas          pins = "gpio27";
229*7ca989eaSÁlvaro Fernández Rojas        };
230*7ca989eaSÁlvaro Fernández Rojas
231*7ca989eaSÁlvaro Fernández Rojas        pinctrl_nand: nand-pins {
232*7ca989eaSÁlvaro Fernández Rojas          function = "nand";
233*7ca989eaSÁlvaro Fernández Rojas          group = "nand_grp";
234*7ca989eaSÁlvaro Fernández Rojas        };
235*7ca989eaSÁlvaro Fernández Rojas      };
236*7ca989eaSÁlvaro Fernández Rojas    };
237