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

title: Cypress CY8C95X0 I2C GPIO expander

maintainers:
  - Patrick Rudolph <patrick.rudolph@9elements.com>

description: |
  This supports the 20/40/60 pin Cypress CYC95x0 GPIO I2C expanders.
  Pin function configuration is performed on a per-pin basis.

properties:
  compatible:
    enum:
      - cypress,cy8c9520
      - cypress,cy8c9540
      - cypress,cy8c9560

  reg:
    maxItems: 1

  gpio-controller: true

  '#gpio-cells':
    description:
      The first cell is the GPIO number and the second cell specifies GPIO
      flags, as defined in <dt-bindings/gpio/gpio.h>.
    const: 2

  interrupts:
    maxItems: 1

  interrupt-controller: true

  '#interrupt-cells':
    const: 2

  gpio-line-names: true

  gpio-ranges:
    maxItems: 1

  gpio-reserved-ranges:
    minItems: 1
    maxItems: 60

  vdd-supply:
    description:
      Optional power supply.

  reset-gpios:
    description: GPIO connected to the XRES pin
    maxItems: 1

patternProperties:
  '-pins$':
    type: object
    description:
      Pinctrl node's client devices use subnodes for desired pin configuration.
      Client device subnodes use below standard properties.
    $ref: pincfg-node.yaml#

    properties:
      pins:
        description:
          List of gpio pins affected by the properties specified in this
          subnode.
        items:
          pattern: '^gp([0-7][0-7])$'
        minItems: 1
        maxItems: 60

      function:
        description:
          Specify the alternative function to be configured for the specified
          pins.
        enum: [ gpio, pwm ]

      bias-pull-down: true

      bias-pull-up: true

      bias-disable: true

      input-enable: true

      output-high: true

      output-low: true

      drive-push-pull: true

      drive-open-drain: true

      drive-open-source: true

    required:
      - pins
      - function

    additionalProperties: false

required:
  - compatible
  - reg
  - interrupts
  - interrupt-controller
  - '#interrupt-cells'
  - gpio-controller
  - '#gpio-cells'

additionalProperties: false

allOf:
  - $ref: pinctrl.yaml#

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/interrupt-controller/irq.h>

    i2c {
      #address-cells = <1>;
      #size-cells = <0>;

      pinctrl@20 {
        compatible = "cypress,cy8c9520";
        reg = <0x20>;
        gpio-controller;
        #gpio-cells = <2>;
        #interrupt-cells = <2>;
        interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        vdd-supply = <&p3v3>;
        gpio-reserved-ranges = <1 2>, <6 1>, <10 1>, <15 1>;

        pinctrl-0 = <&U62160_pins>, <&U62160_ipins>;
        pinctrl-names = "default";

        U62160_pins: cfg-pins {
          pins = "gp03", "gp16", "gp20", "gp50", "gp51";
          function = "gpio";
          input-enable;
          bias-pull-up;
        };

        U62160_ipins: icfg-pins {
          pins = "gp04", "gp17", "gp21", "gp52", "gp53";
          function = "gpio";
          input-enable;
          bias-pull-up;
        };
      };
    };
