[PATCH 1/8] dt-bindings: HID: i2c-hid: elan: Introduce Elan eKTH8D18

From: Chen-Yu Tsai
Date: Wed Mar 12 2025 - 06:45:16 EST


The Elan eKTH8D18 touchscreen controller is an I2C HID device with a
longer boot-up time. Power sequence timing wise it is compatible with
the eKTH6A12NAY, with a power-on delay of at least 5ms, 20ms
out-of-reset for I2C ack response, and 150ms out-of-reset for I2C HID
enumeration. Enumeration and subsequent operation follows the I2C HID
standard. The eKTH6A12NAY requires longer times for both parts.

Add a compatible string for it with the ekth6a12nay one as a fallback.

Signed-off-by: Chen-Yu Tsai <wenst@xxxxxxxxxxxx>
---
.../bindings/input/elan,ekth6915.yaml | 29 ++++++++++++++++---
1 file changed, 25 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
index cb3e1801b0d3..81c391952ccc 100644
--- a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
+++ b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
@@ -4,14 +4,14 @@
$id: http://devicetree.org/schemas/input/elan,ekth6915.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

-title: Elan eKTH6915 touchscreen controller
+title: Elan I2C-HID touchscreen controllers

maintainers:
- Douglas Anderson <dianders@xxxxxxxxxxxx>

description:
- Supports the Elan eKTH6915 touchscreen controller.
- This touchscreen controller uses the i2c-hid protocol with a reset GPIO.
+ Supports the Elan eKTH6915 and other I2C-HID touchscreen controllers.
+ These touchscreen controller use the i2c-hid protocol with a reset GPIO.

allOf:
- $ref: /schemas/input/touchscreen/touchscreen.yaml#
@@ -23,12 +23,18 @@ properties:
- enum:
- elan,ekth5015m
- const: elan,ekth6915
+ - items:
+ - enum:
+ - elan,ekth8d18
+ - const: elan,ekth6a12nay
- enum:
- elan,ekth6915
- elan,ekth6a12nay

reg:
- const: 0x10
+ enum:
+ - 0x10
+ - 0x16

interrupts:
maxItems: 1
@@ -58,6 +64,21 @@ required:
- interrupts
- vcc33-supply

+if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - elan,ekth8d18
+then:
+ properties:
+ reg:
+ const: 0x16
+else:
+ properties:
+ reg:
+ const: 0x10
+
additionalProperties: false

examples:
--
2.49.0.rc0.332.g42c0ae87b1-goog