xref: /openbmc/linux/Documentation/devicetree/bindings/mfd/brcm,bcm6328-gpio-sysctl.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
17f9dfaa2SÁlvaro Fernández Rojas# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
27f9dfaa2SÁlvaro Fernández Rojas%YAML 1.2
37f9dfaa2SÁlvaro Fernández Rojas---
47f9dfaa2SÁlvaro Fernández Rojas$id: http://devicetree.org/schemas/mfd/brcm,bcm6328-gpio-sysctl.yaml#
57f9dfaa2SÁlvaro Fernández Rojas$schema: http://devicetree.org/meta-schemas/core.yaml#
67f9dfaa2SÁlvaro Fernández Rojas
7dd3cb467SAndrew Lunntitle: Broadcom BCM6328 GPIO System Controller
87f9dfaa2SÁlvaro Fernández Rojas
97f9dfaa2SÁlvaro Fernández Rojasmaintainers:
107f9dfaa2SÁlvaro Fernández Rojas  - Álvaro Fernández Rojas <noltari@gmail.com>
117f9dfaa2SÁlvaro Fernández Rojas  - Jonas Gorski <jonas.gorski@gmail.com>
127f9dfaa2SÁlvaro Fernández Rojas
137f9dfaa2SÁlvaro Fernández Rojasdescription:
147f9dfaa2SÁlvaro Fernández Rojas  Broadcom BCM6328 SoC GPIO system controller which provides a register map
157f9dfaa2SÁlvaro Fernández Rojas  for controlling the GPIO and pins of the SoC.
167f9dfaa2SÁlvaro Fernández Rojas
177f9dfaa2SÁlvaro Fernández Rojasproperties:
187f9dfaa2SÁlvaro Fernández Rojas  "#address-cells": true
197f9dfaa2SÁlvaro Fernández Rojas
207f9dfaa2SÁlvaro Fernández Rojas  "#size-cells": true
217f9dfaa2SÁlvaro Fernández Rojas
227f9dfaa2SÁlvaro Fernández Rojas  compatible:
237f9dfaa2SÁlvaro Fernández Rojas    items:
247f9dfaa2SÁlvaro Fernández Rojas      - const: brcm,bcm6328-gpio-sysctl
257f9dfaa2SÁlvaro Fernández Rojas      - const: syscon
267f9dfaa2SÁlvaro Fernández Rojas      - const: simple-mfd
277f9dfaa2SÁlvaro Fernández Rojas
287f9dfaa2SÁlvaro Fernández Rojas  ranges:
297f9dfaa2SÁlvaro Fernández Rojas    maxItems: 1
307f9dfaa2SÁlvaro Fernández Rojas
317f9dfaa2SÁlvaro Fernández Rojas  reg:
327f9dfaa2SÁlvaro Fernández Rojas    maxItems: 1
337f9dfaa2SÁlvaro Fernández Rojas
347f9dfaa2SÁlvaro Fernández RojaspatternProperties:
357f9dfaa2SÁlvaro Fernández Rojas  "^gpio@[0-9a-f]+$":
367f9dfaa2SÁlvaro Fernández Rojas    # Child node
377f9dfaa2SÁlvaro Fernández Rojas    type: object
38*9e20e5f8SKrzysztof Kozlowski    $ref: /schemas/gpio/brcm,bcm63xx-gpio.yaml
397f9dfaa2SÁlvaro Fernández Rojas    description:
407f9dfaa2SÁlvaro Fernández Rojas      GPIO controller for the SoC GPIOs. This child node definition
417f9dfaa2SÁlvaro Fernández Rojas      should follow the bindings specified in
421c23553aSSean Anderson      Documentation/devicetree/bindings/gpio/brcm,bcm63xx-gpio.yaml.
437f9dfaa2SÁlvaro Fernández Rojas
447f9dfaa2SÁlvaro Fernández Rojas  "^pinctrl@[0-9a-f]+$":
457f9dfaa2SÁlvaro Fernández Rojas    # Child node
467f9dfaa2SÁlvaro Fernández Rojas    type: object
47*9e20e5f8SKrzysztof Kozlowski    $ref: /schemas/pinctrl/brcm,bcm6328-pinctrl.yaml
487f9dfaa2SÁlvaro Fernández Rojas    description:
497f9dfaa2SÁlvaro Fernández Rojas      Pin controller for the SoC pins. This child node definition
507f9dfaa2SÁlvaro Fernández Rojas      should follow the bindings specified in
517f9dfaa2SÁlvaro Fernández Rojas      Documentation/devicetree/bindings/pinctrl/brcm,bcm6328-pinctrl.yaml.
527f9dfaa2SÁlvaro Fernández Rojas
537f9dfaa2SÁlvaro Fernández Rojasrequired:
547f9dfaa2SÁlvaro Fernández Rojas  - "#address-cells"
557f9dfaa2SÁlvaro Fernández Rojas  - compatible
567f9dfaa2SÁlvaro Fernández Rojas  - ranges
577f9dfaa2SÁlvaro Fernández Rojas  - reg
587f9dfaa2SÁlvaro Fernández Rojas  - "#size-cells"
597f9dfaa2SÁlvaro Fernández Rojas
607f9dfaa2SÁlvaro Fernández RojasadditionalProperties: false
617f9dfaa2SÁlvaro Fernández Rojas
627f9dfaa2SÁlvaro Fernández Rojasexamples:
637f9dfaa2SÁlvaro Fernández Rojas  - |
647f9dfaa2SÁlvaro Fernández Rojas    syscon@10000080 {
657f9dfaa2SÁlvaro Fernández Rojas      #address-cells = <1>;
667f9dfaa2SÁlvaro Fernández Rojas      #size-cells = <1>;
677f9dfaa2SÁlvaro Fernández Rojas      compatible = "brcm,bcm6328-gpio-sysctl", "syscon", "simple-mfd";
687f9dfaa2SÁlvaro Fernández Rojas      reg = <0x10000080 0x80>;
697f9dfaa2SÁlvaro Fernández Rojas      ranges = <0 0x10000080 0x80>;
707f9dfaa2SÁlvaro Fernández Rojas
717f9dfaa2SÁlvaro Fernández Rojas      gpio@0 {
727f9dfaa2SÁlvaro Fernández Rojas        compatible = "brcm,bcm6328-gpio";
737f9dfaa2SÁlvaro Fernández Rojas        reg-names = "dirout", "dat";
747f9dfaa2SÁlvaro Fernández Rojas        reg = <0x0 0x8>, <0x8 0x8>;
757f9dfaa2SÁlvaro Fernández Rojas
767f9dfaa2SÁlvaro Fernández Rojas        gpio-controller;
777f9dfaa2SÁlvaro Fernández Rojas        gpio-ranges = <&pinctrl 0 0 32>;
787f9dfaa2SÁlvaro Fernández Rojas        #gpio-cells = <2>;
797f9dfaa2SÁlvaro Fernández Rojas      };
807f9dfaa2SÁlvaro Fernández Rojas
817f9dfaa2SÁlvaro Fernández Rojas      pinctrl: pinctrl@18 {
827f9dfaa2SÁlvaro Fernández Rojas        compatible = "brcm,bcm6328-pinctrl";
837f9dfaa2SÁlvaro Fernández Rojas        reg = <0x18 0x10>;
847f9dfaa2SÁlvaro Fernández Rojas
857f9dfaa2SÁlvaro Fernández Rojas        pinctrl_serial_led: serial_led-pins {
867f9dfaa2SÁlvaro Fernández Rojas          pinctrl_serial_led_data: serial_led_data-pins {
877f9dfaa2SÁlvaro Fernández Rojas            function = "serial_led_data";
887f9dfaa2SÁlvaro Fernández Rojas            pins = "gpio6";
897f9dfaa2SÁlvaro Fernández Rojas          };
907f9dfaa2SÁlvaro Fernández Rojas
917f9dfaa2SÁlvaro Fernández Rojas          pinctrl_serial_led_clk: serial_led_clk-pins {
927f9dfaa2SÁlvaro Fernández Rojas            function = "serial_led_clk";
937f9dfaa2SÁlvaro Fernández Rojas            pins = "gpio7";
947f9dfaa2SÁlvaro Fernández Rojas          };
957f9dfaa2SÁlvaro Fernández Rojas        };
967f9dfaa2SÁlvaro Fernández Rojas
977f9dfaa2SÁlvaro Fernández Rojas        pinctrl_inet_act_led: inet_act_led-pins {
987f9dfaa2SÁlvaro Fernández Rojas          function = "inet_act_led";
997f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio11";
1007f9dfaa2SÁlvaro Fernández Rojas        };
1017f9dfaa2SÁlvaro Fernández Rojas
1027f9dfaa2SÁlvaro Fernández Rojas        pinctrl_pcie_clkreq: pcie_clkreq-pins {
1037f9dfaa2SÁlvaro Fernández Rojas          function = "pcie_clkreq";
1047f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio16";
1057f9dfaa2SÁlvaro Fernández Rojas        };
1067f9dfaa2SÁlvaro Fernández Rojas
1077f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy0_spd_led: ephy0_spd_led-pins {
1087f9dfaa2SÁlvaro Fernández Rojas          function = "led";
1097f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio17";
1107f9dfaa2SÁlvaro Fernández Rojas        };
1117f9dfaa2SÁlvaro Fernández Rojas
1127f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy1_spd_led: ephy1_spd_led-pins {
1137f9dfaa2SÁlvaro Fernández Rojas          function = "led";
1147f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio18";
1157f9dfaa2SÁlvaro Fernández Rojas        };
1167f9dfaa2SÁlvaro Fernández Rojas
1177f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy2_spd_led: ephy2_spd_led-pins {
1187f9dfaa2SÁlvaro Fernández Rojas          function = "led";
1197f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio19";
1207f9dfaa2SÁlvaro Fernández Rojas        };
1217f9dfaa2SÁlvaro Fernández Rojas
1227f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy3_spd_led: ephy3_spd_led-pins {
1237f9dfaa2SÁlvaro Fernández Rojas          function = "led";
1247f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio20";
1257f9dfaa2SÁlvaro Fernández Rojas        };
1267f9dfaa2SÁlvaro Fernández Rojas
1277f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy0_act_led: ephy0_act_led-pins {
1287f9dfaa2SÁlvaro Fernández Rojas          function = "ephy0_act_led";
1297f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio25";
1307f9dfaa2SÁlvaro Fernández Rojas        };
1317f9dfaa2SÁlvaro Fernández Rojas
1327f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy1_act_led: ephy1_act_led-pins {
1337f9dfaa2SÁlvaro Fernández Rojas          function = "ephy1_act_led";
1347f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio26";
1357f9dfaa2SÁlvaro Fernández Rojas        };
1367f9dfaa2SÁlvaro Fernández Rojas
1377f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy2_act_led: ephy2_act_led-pins {
1387f9dfaa2SÁlvaro Fernández Rojas          function = "ephy2_act_led";
1397f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio27";
1407f9dfaa2SÁlvaro Fernández Rojas        };
1417f9dfaa2SÁlvaro Fernández Rojas
1427f9dfaa2SÁlvaro Fernández Rojas        pinctrl_ephy3_act_led: ephy3_act_led-pins {
1437f9dfaa2SÁlvaro Fernández Rojas          function = "ephy3_act_led";
1447f9dfaa2SÁlvaro Fernández Rojas          pins = "gpio28";
1457f9dfaa2SÁlvaro Fernández Rojas        };
1467f9dfaa2SÁlvaro Fernández Rojas
1477f9dfaa2SÁlvaro Fernández Rojas        pinctrl_hsspi_cs1: hsspi_cs1-pins {
1487f9dfaa2SÁlvaro Fernández Rojas          function = "hsspi_cs1";
1497f9dfaa2SÁlvaro Fernández Rojas          pins = "hsspi_cs1";
1507f9dfaa2SÁlvaro Fernández Rojas        };
1517f9dfaa2SÁlvaro Fernández Rojas
1527f9dfaa2SÁlvaro Fernández Rojas        pinctrl_usb_port1_device: usb_port1_device-pins {
1537f9dfaa2SÁlvaro Fernández Rojas          function = "usb_device_port";
1547f9dfaa2SÁlvaro Fernández Rojas          pins = "usb_port1";
1557f9dfaa2SÁlvaro Fernández Rojas        };
1567f9dfaa2SÁlvaro Fernández Rojas
1577f9dfaa2SÁlvaro Fernández Rojas        pinctrl_usb_port1_host: usb_port1_host-pins {
1587f9dfaa2SÁlvaro Fernández Rojas          function = "usb_host_port";
1597f9dfaa2SÁlvaro Fernández Rojas          pins = "usb_port1";
1607f9dfaa2SÁlvaro Fernández Rojas        };
1617f9dfaa2SÁlvaro Fernández Rojas      };
1627f9dfaa2SÁlvaro Fernández Rojas    };
163