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

title: Texas Instruments tsc2007 touchscreen controller

maintainers:
  - Frank Li <Frank.Li@nxp.com>

properties:
  compatible:
    const: ti,tsc2007

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  ti,x-plate-ohms:
    description: X-plate resistance in ohms.

  gpios: true

  pendown-gpio: true

  wakeup-source: true

  ti,max-rt:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: maximum pressure.

  ti,fuzzx:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      specifies the absolute input fuzz x value.
      If set, it will permit noise in the data up to +- the value given to the fuzz
      parameter, that is used to filter noise from the event stream.

  ti,fuzzy:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: specifies the absolute input fuzz y value.

  ti,fuzzz:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: specifies the absolute input fuzz z value.

  ti,poll-period:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      how much time to wait (in milliseconds) before reading again the
      values from the tsc2007.

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

required:
  - compatible
  - reg
  - ti,x-plate-ohms

additionalProperties: false

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

        touch@49 {
           compatible = "ti,tsc2007";
           reg = <0x49>;
           interrupt-parent = <&gpio4>;
           interrupts = <0x0 0x8>;
           gpios = <&gpio4 0 0>;
           ti,x-plate-ohms = <180>;
        };
    };