xref: /linux/Documentation/devicetree/bindings/mfd/brcm,bcm6358-gpio-sysctl.yaml (revision 9e20e5f89624e23ea5b7b8b9719e7c6773689f4d)
1cfb1b98bSÁlvaro Fernández Rojas# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2cfb1b98bSÁlvaro Fernández Rojas%YAML 1.2
3cfb1b98bSÁlvaro Fernández Rojas---
4cfb1b98bSÁlvaro Fernández Rojas$id: http://devicetree.org/schemas/mfd/brcm,bcm6358-gpio-sysctl.yaml#
5cfb1b98bSÁlvaro Fernández Rojas$schema: http://devicetree.org/meta-schemas/core.yaml#
6cfb1b98bSÁlvaro Fernández Rojas
7dd3cb467SAndrew Lunntitle: Broadcom BCM6358 GPIO System Controller
8cfb1b98bSÁlvaro Fernández Rojas
9cfb1b98bSÁlvaro Fernández Rojasmaintainers:
10cfb1b98bSÁlvaro Fernández Rojas  - Álvaro Fernández Rojas <noltari@gmail.com>
11cfb1b98bSÁlvaro Fernández Rojas  - Jonas Gorski <jonas.gorski@gmail.com>
12cfb1b98bSÁlvaro Fernández Rojas
13cfb1b98bSÁlvaro Fernández Rojasdescription:
14cfb1b98bSÁlvaro Fernández Rojas  Broadcom BCM6358 SoC GPIO system controller which provides a register map
15cfb1b98bSÁlvaro Fernández Rojas  for controlling the GPIO and pins of the SoC.
16cfb1b98bSÁlvaro Fernández Rojas
17cfb1b98bSÁlvaro Fernández Rojasproperties:
18cfb1b98bSÁlvaro Fernández Rojas  "#address-cells": true
19cfb1b98bSÁlvaro Fernández Rojas
20cfb1b98bSÁlvaro Fernández Rojas  "#size-cells": true
21cfb1b98bSÁlvaro Fernández Rojas
22cfb1b98bSÁlvaro Fernández Rojas  compatible:
23cfb1b98bSÁlvaro Fernández Rojas    items:
24cfb1b98bSÁlvaro Fernández Rojas      - const: brcm,bcm6358-gpio-sysctl
25cfb1b98bSÁlvaro Fernández Rojas      - const: syscon
26cfb1b98bSÁlvaro Fernández Rojas      - const: simple-mfd
27cfb1b98bSÁlvaro Fernández Rojas
28cfb1b98bSÁlvaro Fernández Rojas  ranges:
29cfb1b98bSÁlvaro Fernández Rojas    maxItems: 1
30cfb1b98bSÁlvaro Fernández Rojas
31cfb1b98bSÁlvaro Fernández Rojas  reg:
32cfb1b98bSÁlvaro Fernández Rojas    maxItems: 1
33cfb1b98bSÁlvaro Fernández Rojas
34cfb1b98bSÁlvaro Fernández RojaspatternProperties:
35cfb1b98bSÁlvaro Fernández Rojas  "^gpio@[0-9a-f]+$":
36cfb1b98bSÁlvaro Fernández Rojas    # Child node
37cfb1b98bSÁlvaro Fernández Rojas    type: object
38*9e20e5f8SKrzysztof Kozlowski    $ref: /schemas/gpio/brcm,bcm63xx-gpio.yaml
39cfb1b98bSÁlvaro Fernández Rojas    description:
40cfb1b98bSÁlvaro Fernández Rojas      GPIO controller for the SoC GPIOs. This child node definition
41cfb1b98bSÁlvaro Fernández Rojas      should follow the bindings specified in
421c23553aSSean Anderson      Documentation/devicetree/bindings/gpio/brcm,bcm63xx-gpio.yaml.
43cfb1b98bSÁlvaro Fernández Rojas
44cfb1b98bSÁlvaro Fernández Rojas  "^pinctrl@[0-9a-f]+$":
45cfb1b98bSÁlvaro Fernández Rojas    # Child node
46cfb1b98bSÁlvaro Fernández Rojas    type: object
47*9e20e5f8SKrzysztof Kozlowski    $ref: /schemas/pinctrl/brcm,bcm6358-pinctrl.yaml
48cfb1b98bSÁlvaro Fernández Rojas    description:
49cfb1b98bSÁlvaro Fernández Rojas      Pin controller for the SoC pins. This child node definition
50cfb1b98bSÁlvaro Fernández Rojas      should follow the bindings specified in
51cfb1b98bSÁlvaro Fernández Rojas      Documentation/devicetree/bindings/pinctrl/brcm,bcm6358-pinctrl.yaml.
52cfb1b98bSÁlvaro Fernández Rojas
53cfb1b98bSÁlvaro Fernández Rojasrequired:
54cfb1b98bSÁlvaro Fernández Rojas  - "#address-cells"
55cfb1b98bSÁlvaro Fernández Rojas  - compatible
56cfb1b98bSÁlvaro Fernández Rojas  - ranges
57cfb1b98bSÁlvaro Fernández Rojas  - reg
58cfb1b98bSÁlvaro Fernández Rojas  - "#size-cells"
59cfb1b98bSÁlvaro Fernández Rojas
60cfb1b98bSÁlvaro Fernández RojasadditionalProperties: false
61cfb1b98bSÁlvaro Fernández Rojas
62cfb1b98bSÁlvaro Fernández Rojasexamples:
63cfb1b98bSÁlvaro Fernández Rojas  - |
64cfb1b98bSÁlvaro Fernández Rojas    syscon@fffe0080 {
65cfb1b98bSÁlvaro Fernández Rojas      #address-cells = <1>;
66cfb1b98bSÁlvaro Fernández Rojas      #size-cells = <1>;
67cfb1b98bSÁlvaro Fernández Rojas      compatible = "brcm,bcm6358-gpio-sysctl", "syscon", "simple-mfd";
68cfb1b98bSÁlvaro Fernández Rojas      reg = <0xfffe0080 0x80>;
69cfb1b98bSÁlvaro Fernández Rojas      ranges = <0 0xfffe0080 0x80>;
70cfb1b98bSÁlvaro Fernández Rojas
71cfb1b98bSÁlvaro Fernández Rojas      gpio@0 {
72cfb1b98bSÁlvaro Fernández Rojas        compatible = "brcm,bcm6358-gpio";
73cfb1b98bSÁlvaro Fernández Rojas        reg-names = "dirout", "dat";
74cfb1b98bSÁlvaro Fernández Rojas        reg = <0x0 0x8>, <0x8 0x8>;
75cfb1b98bSÁlvaro Fernández Rojas
76cfb1b98bSÁlvaro Fernández Rojas        gpio-controller;
77cfb1b98bSÁlvaro Fernández Rojas        gpio-ranges = <&pinctrl 0 0 40>;
78cfb1b98bSÁlvaro Fernández Rojas        #gpio-cells = <2>;
79cfb1b98bSÁlvaro Fernández Rojas      };
80cfb1b98bSÁlvaro Fernández Rojas
81cfb1b98bSÁlvaro Fernández Rojas      pinctrl: pinctrl@18 {
82cfb1b98bSÁlvaro Fernández Rojas        compatible = "brcm,bcm6358-pinctrl";
83cfb1b98bSÁlvaro Fernández Rojas        reg = <0x18 0x4>;
84cfb1b98bSÁlvaro Fernández Rojas
85cfb1b98bSÁlvaro Fernández Rojas        pinctrl_ebi_cs: ebi_cs-pins {
86cfb1b98bSÁlvaro Fernández Rojas          function = "ebi_cs";
87cfb1b98bSÁlvaro Fernández Rojas          groups = "ebi_cs_grp";
88cfb1b98bSÁlvaro Fernández Rojas        };
89cfb1b98bSÁlvaro Fernández Rojas
90cfb1b98bSÁlvaro Fernández Rojas        pinctrl_uart1: uart1-pins {
91cfb1b98bSÁlvaro Fernández Rojas          function = "uart1";
92cfb1b98bSÁlvaro Fernández Rojas          groups = "uart1_grp";
93cfb1b98bSÁlvaro Fernández Rojas        };
94cfb1b98bSÁlvaro Fernández Rojas
95cfb1b98bSÁlvaro Fernández Rojas        pinctrl_serial_led: serial_led-pins {
96cfb1b98bSÁlvaro Fernández Rojas          function = "serial_led";
97cfb1b98bSÁlvaro Fernández Rojas          groups = "serial_led_grp";
98cfb1b98bSÁlvaro Fernández Rojas        };
99cfb1b98bSÁlvaro Fernández Rojas
100cfb1b98bSÁlvaro Fernández Rojas        pinctrl_legacy_led: legacy_led-pins {
101cfb1b98bSÁlvaro Fernández Rojas          function = "legacy_led";
102cfb1b98bSÁlvaro Fernández Rojas          groups = "legacy_led_grp";
103cfb1b98bSÁlvaro Fernández Rojas        };
104cfb1b98bSÁlvaro Fernández Rojas
105cfb1b98bSÁlvaro Fernández Rojas        pinctrl_led: led-pins {
106cfb1b98bSÁlvaro Fernández Rojas          function = "led";
107cfb1b98bSÁlvaro Fernández Rojas          groups = "led_grp";
108cfb1b98bSÁlvaro Fernández Rojas        };
109cfb1b98bSÁlvaro Fernández Rojas
110cfb1b98bSÁlvaro Fernández Rojas        pinctrl_spi_cs_23: spi_cs-pins {
111cfb1b98bSÁlvaro Fernández Rojas          function = "spi_cs";
112cfb1b98bSÁlvaro Fernández Rojas          groups = "spi_cs_grp";
113cfb1b98bSÁlvaro Fernández Rojas        };
114cfb1b98bSÁlvaro Fernández Rojas
115cfb1b98bSÁlvaro Fernández Rojas        pinctrl_utopia: utopia-pins {
116cfb1b98bSÁlvaro Fernández Rojas          function = "utopia";
117cfb1b98bSÁlvaro Fernández Rojas          groups = "utopia_grp";
118cfb1b98bSÁlvaro Fernández Rojas        };
119cfb1b98bSÁlvaro Fernández Rojas
120cfb1b98bSÁlvaro Fernández Rojas        pinctrl_pwm_syn_clk: pwm_syn_clk-pins {
121cfb1b98bSÁlvaro Fernández Rojas          function = "pwm_syn_clk";
122cfb1b98bSÁlvaro Fernández Rojas          groups = "pwm_syn_clk_grp";
123cfb1b98bSÁlvaro Fernández Rojas        };
124cfb1b98bSÁlvaro Fernández Rojas
125cfb1b98bSÁlvaro Fernández Rojas        pinctrl_sys_irq: sys_irq-pins {
126cfb1b98bSÁlvaro Fernández Rojas          function = "sys_irq";
127cfb1b98bSÁlvaro Fernández Rojas          groups = "sys_irq_grp";
128cfb1b98bSÁlvaro Fernández Rojas        };
129cfb1b98bSÁlvaro Fernández Rojas      };
130cfb1b98bSÁlvaro Fernández Rojas    };
131