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

title: Semtech's SX9324 capacitive proximity sensor

maintainers:
  - Gwendal Grignou <gwendal@chromium.org>
  - Daniel Campello <campello@chromium.org>

description: |
  Semtech's SX9324 proximity sensor.

properties:
  compatible:
    const: semtech,sx9324

  reg:
    maxItems: 1

  interrupts:
    description:
      Generated by device to announce preceding read request has finished
      and data is available or that a close/far proximity event has happened.
    maxItems: 1

  vdd-supply:
    description: Main power supply

  svdd-supply:
    description: Host interface power supply

  "#io-channel-cells":
    const: 1

  semtech,ph0-pin:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    description: |
      Array of 3 entries. Index represent the id of the CS pin.
      Value indicates how each CS pin is used during phase 0.
      Each of the 3 pins have the following value -
      0 : unused (high impedance)
      1 : measured input
      2 : dynamic shield
      3 : grounded.
      For instance, CS0 measured, CS1 shield and CS2 ground is [1, 2, 3]
    items:
      enum: [ 0, 1, 2, 3 ]
    minItems: 3
    maxItems: 3

  semtech,ph1-pin:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    description: Same as ph0-pin for phase 1.
    items:
      enum: [ 0, 1, 2, 3 ]
    minItems: 3
    maxItems: 3

  semtech,ph2-pin:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    description: Same as ph0-pin for phase 2.
    items:
      enum: [ 0, 1, 2, 3 ]
    minItems: 3
    maxItems: 3

  semtech,ph3-pin:
    $ref: /schemas/types.yaml#/definitions/uint32-array
    description: Same as ph0-pin for phase 3.
    items:
      enum: [ 0, 1, 2, 3 ]
    minItems: 3
    maxItems: 3


  semtech,ph01-resolution:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [8, 16, 32, 64, 128, 256, 512, 1024]
    description:
      Capacitance measurement resolution. For phase 0 and 1.
      Higher the number, higher the resolution.
    default: 128

  semtech,ph23-resolution:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [8, 16, 32, 64, 128, 256, 512, 1024]
    description:
      Capacitance measurement resolution. For phase 2 and 3
    default: 128

  semtech,startup-sensor:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [0, 1, 2, 3]
    default: 0
    description: |
      Phase used for start-up proximity detection.
      It is used when we enable a phase to remove static offset and measure
      only capacitance changes introduced by the user.

  semtech,ph01-proxraw-strength:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 7
    default: 1
    description:
      PROXRAW filter strength for phase 0 and 1. A value of 0 represents off,
      and other values represent 1-1/2^N.

  semtech,ph23-proxraw-strength:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 7
    default: 1
    description:
      Same as proxraw-strength01, for phase 2 and 3.

  semtech,avg-pos-strength:
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295]
    default: 16
    description: |
      Average positive filter strength. A value of 0 represents off and
      UINT_MAX (4294967295) represents infinite. Other values
      represent 1-1/N.

  semtech,cs-idle-sleep:
    description:
      State of CS pins during sleep mode and idle time.
    enum:
      - hi-z
      - gnd
      - vdd

  semtech,int-comp-resistor:
    description:
      Internal resistor setting for compensation.
    enum:
      - lowest
      - low
      - high
      - highest

  semtech,input-precharge-resistor-ohms:
    default: 4000
    multipleOf: 2000
    minimum: 0
    maximum: 30000
    description:
      Pre-charge input resistance in Ohm.

  semtech,input-analog-gain:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 3
    description: |
      Defines the input antenna analog gain
      0: x1.247
      1: x1 (default)
      2: x0.768
      3: x0.552

required:
  - compatible
  - reg
  - "#io-channel-cells"

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c {
      #address-cells = <1>;
      #size-cells = <0>;
      proximity@28 {
        compatible = "semtech,sx9324";
        reg = <0x28>;
        interrupt-parent = <&pio>;
        interrupts = <5 IRQ_TYPE_LEVEL_LOW 5>;
        vdd-supply = <&pp3300_a>;
        svdd-supply = <&pp1800_prox>;
        #io-channel-cells = <1>;
        semtech,ph0-pin = <1 2 3>;
        semtech,ph1-pin = <3 2 1>;
        semtech,ph2-pin = <1 2 3>;
        semtech,ph3-pin = <3 2 1>;
        semtech,ph01-resolution = <256>;
        semtech,ph23-resolution = <256>;
        semtech,startup-sensor = <1>;
        semtech,ph01-proxraw-strength = <2>;
        semtech,ph23-proxraw-strength = <2>;
        semtech,avg-pos-strength = <64>;
        semtech,int-comp-resistor = "lowest";
        semtech,input-precharge-resistor-ohms = <2000>;
        semtech,cs-idle-sleep = "gnd";
      };
    };
