# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/brcm,bcm6358-gpio-sysctl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Broadcom BCM6358 GPIO System Controller Device Tree Bindings

maintainers:
  - Álvaro Fernández Rojas <noltari@gmail.com>
  - Jonas Gorski <jonas.gorski@gmail.com>

description:
  Broadcom BCM6358 SoC GPIO system controller which provides a register map
  for controlling the GPIO and pins of the SoC.

properties:
  "#address-cells": true

  "#size-cells": true

  compatible:
    items:
      - const: brcm,bcm6358-gpio-sysctl
      - const: syscon
      - const: simple-mfd

  ranges:
    maxItems: 1

  reg:
    maxItems: 1

patternProperties:
  "^gpio@[0-9a-f]+$":
    # Child node
    type: object
    $ref: "../gpio/brcm,bcm6345-gpio.yaml"
    description:
      GPIO controller for the SoC GPIOs. This child node definition
      should follow the bindings specified in
      Documentation/devicetree/bindings/gpio/brcm,bcm6345-gpio.yaml.

  "^pinctrl@[0-9a-f]+$":
    # Child node
    type: object
    $ref: "../pinctrl/brcm,bcm6358-pinctrl.yaml"
    description:
      Pin controller for the SoC pins. This child node definition
      should follow the bindings specified in
      Documentation/devicetree/bindings/pinctrl/brcm,bcm6358-pinctrl.yaml.

required:
  - "#address-cells"
  - compatible
  - ranges
  - reg
  - "#size-cells"

additionalProperties: false

examples:
  - |
    syscon@fffe0080 {
      #address-cells = <1>;
      #size-cells = <1>;
      compatible = "brcm,bcm6358-gpio-sysctl", "syscon", "simple-mfd";
      reg = <0xfffe0080 0x80>;
      ranges = <0 0xfffe0080 0x80>;

      gpio@0 {
        compatible = "brcm,bcm6358-gpio";
        reg-names = "dirout", "dat";
        reg = <0x0 0x8>, <0x8 0x8>;

        gpio-controller;
        gpio-ranges = <&pinctrl 0 0 40>;
        #gpio-cells = <2>;
      };

      pinctrl: pinctrl@18 {
        compatible = "brcm,bcm6358-pinctrl";
        reg = <0x18 0x4>;

        pinctrl_ebi_cs: ebi_cs-pins {
          function = "ebi_cs";
          groups = "ebi_cs_grp";
        };

        pinctrl_uart1: uart1-pins {
          function = "uart1";
          groups = "uart1_grp";
        };

        pinctrl_serial_led: serial_led-pins {
          function = "serial_led";
          groups = "serial_led_grp";
        };

        pinctrl_legacy_led: legacy_led-pins {
          function = "legacy_led";
          groups = "legacy_led_grp";
        };

        pinctrl_led: led-pins {
          function = "led";
          groups = "led_grp";
        };

        pinctrl_spi_cs_23: spi_cs-pins {
          function = "spi_cs";
          groups = "spi_cs_grp";
        };

        pinctrl_utopia: utopia-pins {
          function = "utopia";
          groups = "utopia_grp";
        };

        pinctrl_pwm_syn_clk: pwm_syn_clk-pins {
          function = "pwm_syn_clk";
          groups = "pwm_syn_clk_grp";
        };

        pinctrl_sys_irq: sys_irq-pins {
          function = "sys_irq";
          groups = "sys_irq_grp";
        };
      };
    };
