# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/pinctrl/brcm,bcm6362-pinctrl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Broadcom BCM6362 pin controller

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

description:
  Bindings for Broadcom's BCM6362 memory-mapped pin controller.

properties:
  compatible:
    const: brcm,bcm6362-pinctrl

  reg:
    maxItems: 2

patternProperties:
  '-pins$':
    type: object
    $ref: pinmux-node.yaml#

    properties:
      function:
        enum: [ usb_device_led, sys_irq, serial_led_clk, serial_led_data,
                robosw_led_data, robosw_led_clk, robosw_led0, robosw_led1,
                inet_led, spi_cs2, spi_cs3, ntr_pulse, uart1_scts,
                uart1_srts, uart1_sdin, uart1_sdout, adsl_spi_miso,
                adsl_spi_mosi, adsl_spi_clk, adsl_spi_cs, ephy0_led,
                ephy1_led, ephy2_led, ephy3_led, ext_irq0, ext_irq1,
                ext_irq2, ext_irq3, nand ]

      pins:
        enum: [ gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7,
                gpio8, gpio9, gpio10, gpio11, gpio12, gpio13, gpio14,
                gpio15, gpio16, gpio17, gpio18, gpio19, gpio20, gpio21,
                gpio22, gpio23, gpio24, gpio25, gpio26, gpio27, nand_grp ]

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    pinctrl@18 {
      compatible = "brcm,bcm6362-pinctrl";
      reg = <0x18 0x10>, <0x38 0x4>;

      pinctrl_usb_device_led: usb_device_led-pins {
        function = "usb_device_led";
        pins = "gpio0";
      };

      pinctrl_sys_irq: sys_irq-pins {
        function = "sys_irq";
        pins = "gpio1";
      };

      pinctrl_serial_led: serial_led-pins {
        pinctrl_serial_led_clk: serial_led_clk-pins {
          function = "serial_led_clk";
          pins = "gpio2";
        };

        pinctrl_serial_led_data: serial_led_data-pins {
          function = "serial_led_data";
          pins = "gpio3";
        };
      };

      pinctrl_robosw_led_data: robosw_led_data-pins {
        function = "robosw_led_data";
        pins = "gpio4";
      };

      pinctrl_robosw_led_clk: robosw_led_clk-pins {
        function = "robosw_led_clk";
        pins = "gpio5";
      };

      pinctrl_robosw_led0: robosw_led0-pins {
        function = "robosw_led0";
        pins = "gpio6";
      };

      pinctrl_robosw_led1: robosw_led1-pins {
        function = "robosw_led1";
        pins = "gpio7";
      };

      pinctrl_inet_led: inet_led-pins {
        function = "inet_led";
        pins = "gpio8";
      };

      pinctrl_spi_cs2: spi_cs2-pins {
        function = "spi_cs2";
        pins = "gpio9";
      };

      pinctrl_spi_cs3: spi_cs3-pins {
        function = "spi_cs3";
        pins = "gpio10";
      };

      pinctrl_ntr_pulse: ntr_pulse-pins {
        function = "ntr_pulse";
        pins = "gpio11";
      };

      pinctrl_uart1_scts: uart1_scts-pins {
        function = "uart1_scts";
        pins = "gpio12";
      };

      pinctrl_uart1_srts: uart1_srts-pins {
        function = "uart1_srts";
        pins = "gpio13";
      };

      pinctrl_uart1: uart1-pins {
        pinctrl_uart1_sdin: uart1_sdin-pins {
          function = "uart1_sdin";
          pins = "gpio14";
        };

        pinctrl_uart1_sdout: uart1_sdout-pins {
          function = "uart1_sdout";
          pins = "gpio15";
        };
      };

      pinctrl_adsl_spi: adsl_spi-pins {
        pinctrl_adsl_spi_miso: adsl_spi_miso-pins {
          function = "adsl_spi_miso";
          pins = "gpio16";
        };

        pinctrl_adsl_spi_mosi: adsl_spi_mosi-pins {
          function = "adsl_spi_mosi";
          pins = "gpio17";
        };

        pinctrl_adsl_spi_clk: adsl_spi_clk-pins {
          function = "adsl_spi_clk";
          pins = "gpio18";
        };

        pinctrl_adsl_spi_cs: adsl_spi_cs-pins {
          function = "adsl_spi_cs";
          pins = "gpio19";
        };
      };

      pinctrl_ephy0_led: ephy0_led-pins {
        function = "ephy0_led";
        pins = "gpio20";
      };

      pinctrl_ephy1_led: ephy1_led-pins {
        function = "ephy1_led";
        pins = "gpio21";
      };

      pinctrl_ephy2_led: ephy2_led-pins {
        function = "ephy2_led";
        pins = "gpio22";
      };

      pinctrl_ephy3_led: ephy3_led-pins {
        function = "ephy3_led";
        pins = "gpio23";
      };

      pinctrl_ext_irq0: ext_irq0-pins {
        function = "ext_irq0";
        pins = "gpio24";
      };

      pinctrl_ext_irq1: ext_irq1-pins {
        function = "ext_irq1";
        pins = "gpio25";
      };

      pinctrl_ext_irq2: ext_irq2-pins {
        function = "ext_irq2";
        pins = "gpio26";
      };

      pinctrl_ext_irq3: ext_irq3-pins {
        function = "ext_irq3";
        pins = "gpio27";
      };

      pinctrl_nand: nand-pins {
        function = "nand";
        group = "nand_grp";
      };
    };
