mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-01 06:39:05 +00:00

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, both shorter than what the eKTH6A12NAY requires. Enumeration and subsequent operation follows the I2C HID standard. Add a compatible string for it with the ekth6a12nay one as a fallback. No enum was used as it is rare to actually add new entries. These chips are commonly completely backward compatible, and unless the power sequencing delays change, there is no real effort being made to keep track of new parts, which come out constantly. Also drop the constraints on the I2C address since it's not really part of the binding. Reviewed-by: Douglas Anderson <dianders@chromium.org> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org> Link: https://lore.kernel.org/r/20250617082004.1653492-2-wenst@chromium.org Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
85 lines
1.9 KiB
YAML
85 lines
1.9 KiB
YAML
# 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 I2C-HID touchscreen controllers
|
|
|
|
maintainers:
|
|
- Douglas Anderson <dianders@chromium.org>
|
|
|
|
description:
|
|
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#
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- items:
|
|
- enum:
|
|
- elan,ekth5015m
|
|
- const: elan,ekth6915
|
|
- items:
|
|
- const: elan,ekth8d18
|
|
- const: elan,ekth6a12nay
|
|
- enum:
|
|
- elan,ekth6915
|
|
- elan,ekth6a12nay
|
|
|
|
reg: true
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
panel: true
|
|
|
|
reset-gpios:
|
|
description: Reset GPIO; not all touchscreens using eKTH6915 hook this up.
|
|
|
|
no-reset-on-power-off:
|
|
type: boolean
|
|
description:
|
|
Reset line is wired so that it can (and should) be left deasserted when
|
|
the power supply is off.
|
|
|
|
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>;
|
|
|
|
touchscreen@10 {
|
|
compatible = "elan,ekth5015m", "elan,ekth6915";
|
|
reg = <0x10>;
|
|
|
|
interrupt-parent = <&tlmm>;
|
|
interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
|
|
|
|
reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
|
|
vcc33-supply = <&pp3300_ts>;
|
|
};
|
|
};
|