devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 1/2] dt-bindings: HID: i2c-hid: elan: Introduce bindings for Elan eKTH6915
@ 2022-05-23 21:23 Douglas Anderson
  2022-05-23 21:23 ` [PATCH v2 2/2] HID: i2c-hid: elan: Add support for Elan eKTH6915 i2c-hid touchscreens Douglas Anderson
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Douglas Anderson @ 2022-05-23 21:23 UTC (permalink / raw)
  To: Jiri Kosina, Benjamin Tissoires, Dmitry Torokhov, Rob Herring,
	Krzysztof Kozlowski
  Cc: linux-input, devicetree, swboyd, mka, Douglas Anderson,
	linux-kernel

Like many i2c-hid touchscreen controllers, the Elan eKTH6915
controller has a reset gpio. For the Goodix GT7375P touchscreen the
decision was to add a new binding rather than trying to add a new GPIO
to the existing i2c-hid binding. We'll follow the lead and do it here,
too.

SIDE NOTE: the Elan eKTH6915 is a touchscreen _controller_ that's
included as a part on some touchscreens. The reset line isn't truly
necessary for the functioning of the touchscreen, so it's possible
that some designs won't have it hooked up and will just guarantee the
power sequencing requirements with RLC circuits. Thus, we'll mark the
reset gpio as optional.

Note that if the reset GPIO isn't used there's actually no true need
to use the "elan,ekth6915" compatible instead of the "hid-over-i2c" on
Linux. However:
- Officially using just "hid-over-i2c" for this device violates the
  existing "hid-over-i2c" bindings. The bindings say that you're not
  supposed to use "post-power-on-delay-ms" without specifying a more
  specific compatible. Currently the Linux driver doesn't enforce
  this, but it violates the bindings to just use
  "hid-over-i2c". ...and if you're going to add a more specific
  compatible anyway, might as well do it right.
- Using this compatible means we don't need to specify
  "hid-descr-addr" since it's inferred from the compatible.
- Using this compatible means that the regulator names match the names
  on the Elan datasheet (vcc33 / vccio) vs the generic hid-over-i2c
  (vdd / vddl).

Signed-off-by: Douglas Anderson <dianders@chromium.org>
---

(no changes since v1)

 .../bindings/input/elan,ekth6915.yaml         | 65 +++++++++++++++++++
 1 file changed, 65 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/elan,ekth6915.yaml

diff --git a/Documentation/devicetree/bindings/input/elan,ekth6915.yaml b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
new file mode 100644
index 000000000000..05e6f2df604c
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/elan,ekth6915.yaml
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/elan,ekth6915.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Elan eKTH6915 touchscreen controller
+
+maintainers:
+  - Douglas Anderson <dianders@chromium.org>
+
+description:
+  Supports the Elan eKTH6915 touchscreen controller.
+  This touchscreen controller uses the i2c-hid protocol with a reset GPIO.
+
+properties:
+  compatible:
+    items:
+      - const: elan,ekth6915
+
+  reg:
+    const: 0x10
+
+  interrupts:
+    maxItems: 1
+
+  reset-gpios:
+    description: Reset GPIO; not all touchscreens using eKTH6915 hook this up.
+
+  vcc33-supply:
+    description: The 3.3V supply to the touchscreen.
+
+  vccio-supply:
+    description:
+      The IO supply to the touchscreen. Need not be specified if this is the
+      same as the 3.3V supply.
+
+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>;
+
+      ap_ts: touchscreen@10 {
+        compatible = "elan,ekth6915";
+        reg = <0x10>;
+
+        interrupt-parent = <&tlmm>;
+        interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
+
+        reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
+        vcc33-supply = <&pp3300_ts>;
+      };
+    };
-- 
2.36.1.124.g0e6072fb45-goog


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-06-08 10:04 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-23 21:23 [PATCH v2 1/2] dt-bindings: HID: i2c-hid: elan: Introduce bindings for Elan eKTH6915 Douglas Anderson
2022-05-23 21:23 ` [PATCH v2 2/2] HID: i2c-hid: elan: Add support for Elan eKTH6915 i2c-hid touchscreens Douglas Anderson
2022-05-23 21:38   ` Matthias Kaehlcke
2022-05-23 23:35 ` [PATCH v2 1/2] dt-bindings: HID: i2c-hid: elan: Introduce bindings for Elan eKTH6915 Doug Anderson
2022-06-02 13:38 ` Rob Herring
2022-06-08  9:47 ` Jiri Kosina

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).