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

title: Intel Keem Bay pin controller

maintainers:
  - Lakshmi Sowjanya D <lakshmi.sowjanya.d@intel.com>

description: |
  Intel Keem Bay SoC integrates a pin controller which enables control
  of pin directions, input/output values and configuration
  for a total of 80 pins.

properties:
  compatible:
    const: intel,keembay-pinctrl

  reg:
    maxItems: 2

  gpio-controller: true

  '#gpio-cells':
    const: 2

  ngpios:
    description: The number of GPIOs exposed.
    const: 80

  interrupts:
    description:
      Specifies the interrupt lines to be used by the controller.
      Each interrupt line is shared by upto 4 GPIO lines.
    maxItems: 8

  interrupt-controller: true

  '#interrupt-cells':
    const: 2

patternProperties:
  '^gpio@[0-9a-f]*$':
    type: object
    additionalProperties: false

    description:
      Child nodes can be specified to contain pin configuration information,
      which can then be utilized by pinctrl client devices.
      The following properties are supported.

    properties:
      pins:
        description: |
          The name(s) of the pins to be configured in the child node.
          Supported pin names are "GPIO0" up to "GPIO79".

      bias-disable: true

      bias-pull-down: true

      bias-pull-up: true

      drive-strength:
        description: IO pads drive strength in milli Ampere.
        enum: [2, 4, 8, 12]

      bias-bus-hold:
        type: boolean

      input-schmitt-enable:
        type: boolean

      slew-rate:
        description: GPIO slew rate control.
                      0 - Fast(~100MHz)
                      1 - Slow(~50MHz)
        enum: [0, 1]

additionalProperties: false

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

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    // Example 1
    gpio@0 {
        compatible = "intel,keembay-pinctrl";
        reg = <0x600b0000 0x88>,
              <0x600b0190 0x1ac>;
        gpio-controller;
        ngpios = <0x50>;
        #gpio-cells = <0x2>;
        interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        #interrupt-cells = <2>;
    };

    // Example 2
    gpio@1 {
        compatible = "intel,keembay-pinctrl";
        reg = <0x600c0000 0x88>,
              <0x600c0190 0x1ac>;
        gpio-controller;
        ngpios = <0x50>;
        #gpio-cells = <0x2>;
        interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
                     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
        interrupt-controller;
        #interrupt-cells = <2>;
    };
