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

title: Broadcom BCM6328 GPIO System Controller Device Tree Bindings

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

description:
  Broadcom BCM6328 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,bcm6328-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,bcm6328-pinctrl.yaml"
    description:
      Pin controller for the SoC pins. This child node definition
      should follow the bindings specified in
      Documentation/devicetree/bindings/pinctrl/brcm,bcm6328-pinctrl.yaml.

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

additionalProperties: false

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

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

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

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

        pinctrl_serial_led: serial_led-pins {
          pinctrl_serial_led_data: serial_led_data-pins {
            function = "serial_led_data";
            pins = "gpio6";
          };

          pinctrl_serial_led_clk: serial_led_clk-pins {
            function = "serial_led_clk";
            pins = "gpio7";
          };
        };

        pinctrl_inet_act_led: inet_act_led-pins {
          function = "inet_act_led";
          pins = "gpio11";
        };

        pinctrl_pcie_clkreq: pcie_clkreq-pins {
          function = "pcie_clkreq";
          pins = "gpio16";
        };

        pinctrl_ephy0_spd_led: ephy0_spd_led-pins {
          function = "led";
          pins = "gpio17";
        };

        pinctrl_ephy1_spd_led: ephy1_spd_led-pins {
          function = "led";
          pins = "gpio18";
        };

        pinctrl_ephy2_spd_led: ephy2_spd_led-pins {
          function = "led";
          pins = "gpio19";
        };

        pinctrl_ephy3_spd_led: ephy3_spd_led-pins {
          function = "led";
          pins = "gpio20";
        };

        pinctrl_ephy0_act_led: ephy0_act_led-pins {
          function = "ephy0_act_led";
          pins = "gpio25";
        };

        pinctrl_ephy1_act_led: ephy1_act_led-pins {
          function = "ephy1_act_led";
          pins = "gpio26";
        };

        pinctrl_ephy2_act_led: ephy2_act_led-pins {
          function = "ephy2_act_led";
          pins = "gpio27";
        };

        pinctrl_ephy3_act_led: ephy3_act_led-pins {
          function = "ephy3_act_led";
          pins = "gpio28";
        };

        pinctrl_hsspi_cs1: hsspi_cs1-pins {
          function = "hsspi_cs1";
          pins = "hsspi_cs1";
        };

        pinctrl_usb_port1_device: usb_port1_device-pins {
          function = "usb_device_port";
          pins = "usb_port1";
        };

        pinctrl_usb_port1_host: usb_port1_host-pins {
          function = "usb_host_port";
          pins = "usb_port1";
        };
      };
    };
