Commit 8d3ae46c authored by Johan Hovold's avatar Johan Hovold Committed by Benjamin Tissoires
Browse files

dt-bindings: HID: i2c-hid: add dedicated Ilitek ILI2901 schema



The Ilitek ILI2901 touch screen controller was apparently incorrectly
added to the Elan eKTH6915 schema simply because it also has a reset
gpio and is currently managed by the Elan driver in Linux.

The two controllers are not related even if an unfortunate wording in
the commit message adding the Ilitek compatible made it sound like they
were.

Add a dedicated schema for the ILI2901 which does not specify the I2C
address (which is likely 0x41 rather than 0x10 as for other Ilitek touch
controllers) to avoid cluttering the Elan schema with unrelated devices
and to make it easier to find the correct schema when adding further
Ilitek controllers.

Fixes: d74ac6f6 ("dt-bindings: HID: i2c-hid: elan: Introduce Ilitek ili2901")
Cc: Zhengqiao Xia <xiazhengqiao@huaqin.corp-partner.google.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: default avatarJohan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20240507144821.12275-2-johan+linaro@kernel.org


Signed-off-by: default avatarBenjamin Tissoires <bentiss@kernel.org>
parent 22d6d060
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ properties:
  compatible:
    enum:
      - elan,ekth6915
      - ilitek,ili2901

  reg:
    const: 0x10
+66 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/input/ilitek,ili2901.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Ilitek ILI2901 touchscreen controller

maintainers:
  - Jiri Kosina <jkosina@suse.com>

description:
  Supports the Ilitek ILI2901 touchscreen controller.
  This touchscreen controller uses the i2c-hid protocol with a reset GPIO.

allOf:
  - $ref: /schemas/input/touchscreen/touchscreen.yaml#

properties:
  compatible:
    enum:
      - ilitek,ili2901

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  panel: true

  reset-gpios:
    maxItems: 1

  vcc33-supply: true

  vccio-supply: true

required:
  - compatible
  - reg
  - interrupts
  - vcc33-supply

additionalProperties: false

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

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

      touchscreen@41 {
        compatible = "ilitek,ili2901";
        reg = <0x41>;

        interrupt-parent = <&tlmm>;
        interrupts = <9 IRQ_TYPE_LEVEL_LOW>;

        reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
        vcc33-supply = <&pp3300_ts>;
      };
    };