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

title: Microsemi/Microchip Serial GPIO controller

maintainers:
  - Lars Povlsen <lars.povlsen@microchip.com>

description: |
  By using a serial interface, the SIO controller significantly extend
  the number of available GPIOs with a minimum number of additional
  pins on the device. The primary purpose of the SIO controllers is to
  connect control signals from SFP modules and to act as an LED
  controller.

properties:
  $nodename:
    pattern: "^gpio@[0-9a-f]+$"

  compatible:
    enum:
      - microchip,sparx5-sgpio
      - mscc,ocelot-sgpio
      - mscc,luton-sgpio

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  microchip,sgpio-port-ranges:
    description: This is a sequence of tuples, defining intervals of
      enabled ports in the serial input stream. The enabled ports must
      match the hardware configuration in order for signals to be
      properly written/read to/from the controller holding
      registers. Being tuples, then number of arguments must be
      even. The tuples mast be ordered (low, high) and are
      inclusive.
    $ref: /schemas/types.yaml#/definitions/uint32-matrix
    items:
      items:
        - description: |
            "low" indicates start bit number of range
          minimum: 0
          maximum: 31
        - description: |
            "high" indicates end bit number of range
          minimum: 0
          maximum: 31
    minItems: 1
    maxItems: 32

  bus-frequency:
    description: The sgpio controller frequency (Hz). This dictates
      the serial bitstream speed, which again affects the latency in
      getting control signals back and forth between external shift
      registers. The speed must be no larger than half the system
      clock, and larger than zero.
    default: 12500000

  resets:
    maxItems: 1

  reset-names:
    items:
      - const: switch

patternProperties:
  "^gpio@[0-1]$":
    type: object
    properties:
      compatible:
        const: microchip,sparx5-sgpio-bank

      reg:
        description: |
          The GPIO bank number. "0" is designates the input pin bank,
          "1" the output bank.
        maxItems: 1

      gpio-controller: true

      '#gpio-cells':
        description: |
         Specifies the pin (port and bit) and flags. Note that the
         SGIO pin is defined by *2* numbers, a port number between 0
         and 31, and a bit index, 0 to 3. The maximum bit number is
         controlled indirectly by the "ngpios" property: (ngpios/32).
        const: 3

      interrupts:
        description: Specifies the sgpio IRQ (in parent controller)
        maxItems: 1

      interrupt-controller: true

      '#interrupt-cells':
        description:
          Specifies the pin (port and bit) and flags, as defined in
          defined in include/dt-bindings/interrupt-controller/irq.h
        const: 3

      ngpios:
        description: The numbers of GPIO's exposed. This must be a
          multiple of 32.
        minimum: 32
        maximum: 128

    required:
      - compatible
      - reg
      - gpio-controller
      - '#gpio-cells'
      - ngpios

    additionalProperties: false

additionalProperties: false

required:
  - compatible
  - reg
  - clocks
  - microchip,sgpio-port-ranges
  - "#address-cells"
  - "#size-cells"

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    sgpio2: gpio@1101059c {
      #address-cells = <1>;
      #size-cells = <0>;
      compatible = "microchip,sparx5-sgpio";
      clocks = <&sys_clk>;
      pinctrl-0 = <&sgpio2_pins>;
      pinctrl-names = "default";
      reg = <0x1101059c 0x118>;
      microchip,sgpio-port-ranges = <0 0>, <16 18>, <28 31>;
      bus-frequency = <25000000>;
      sgpio_in2: gpio@0 {
        reg = <0>;
        compatible = "microchip,sparx5-sgpio-bank";
        gpio-controller;
        #gpio-cells = <3>;
        ngpios = <96>;
        interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        #interrupt-cells = <3>;
      };
      sgpio_out2: gpio@1 {
        compatible = "microchip,sparx5-sgpio-bank";
        reg = <1>;
        gpio-controller;
        #gpio-cells = <3>;
        ngpios = <96>;
      };
    };
