[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <iqfvpacnymzckd3vi7mxgzbljomwkww3mpuupn5mhy3rtlwebv@2vf346kfqpno>
Date: Sat, 20 Sep 2025 22:39:43 +0200
From: Sebastian Reichel <sebastian.reichel@...labora.com>
To: Dario Binacchi <dario.binacchi@...rulasolutions.com>
Cc: linux-kernel@...r.kernel.org, linux-amarula@...rulasolutions.com,
Conor Dooley <conor+dt@...nel.org>, Dmitry Torokhov <dmitry.torokhov@...il.com>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Rob Herring <robh@...nel.org>, devicetree@...r.kernel.org,
linux-input@...r.kernel.org
Subject: Re: [PATCH v5 1/3] dt-bindings: touchscreen: convert eeti bindings
to json schema
Hi,
On Fri, Sep 19, 2025 at 09:58:09AM +0200, Dario Binacchi wrote:
> Convert EETI touchscreen controller device tree binding to json-schema.
>
> Signed-off-by: Dario Binacchi <dario.binacchi@...rulasolutions.com>
> ---
>
> Changes in v5:
> - Move bindings into eeti,exc3000.yaml
> - Remove eeti.yaml
>
> Changes in v2:
> - Added in v2
>
> .../input/touchscreen/eeti,exc3000.yaml | 41 ++++++++++++++++---
> .../bindings/input/touchscreen/eeti.txt | 30 --------------
> 2 files changed, 36 insertions(+), 35 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/eeti.txt
>
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/eeti,exc3000.yaml b/Documentation/devicetree/bindings/input/touchscreen/eeti,exc3000.yaml
> index 1c7ae05a8c15..13b865d3ee58 100644
> --- a/Documentation/devicetree/bindings/input/touchscreen/eeti,exc3000.yaml
> +++ b/Documentation/devicetree/bindings/input/touchscreen/eeti,exc3000.yaml
> @@ -9,15 +9,13 @@ title: EETI EXC3000 series touchscreen controller
> maintainers:
> - Dmitry Torokhov <dmitry.torokhov@...il.com>
>
> -allOf:
> - - $ref: touchscreen.yaml#
> -
> properties:
> compatible:
> oneOf:
> - const: eeti,exc3000
> - const: eeti,exc80h60
> - const: eeti,exc80h84
> + - const: eeti,exc3000-i2c
I think this should be
- const: eeti,exc3000-i2c
deprecated: true
The compatible is obviously not something that should be used
anymore.
> - items:
> - enum:
> - eeti,exc81w32
> @@ -30,18 +28,34 @@ properties:
> maxItems: 1
> vdd-supply:
> description: Power supply regulator for the chip
> + attn-gpios:
> + maxItems: 1
> + description: Phandle to a GPIO to check whether interrupt is still
> + latched. This is necessary for platforms that lack
> + support for level-triggered IRQs.
deprecated: true
(see below)
> touchscreen-size-x: true
> touchscreen-size-y: true
> touchscreen-inverted-x: true
> touchscreen-inverted-y: true
> touchscreen-swapped-x-y: true
>
> +allOf:
> + - $ref: touchscreen.yaml#
> + - if:
> + not:
> + properties:
> + compatible:
> + contains:
> + const: eeti,exc3000-i2c
> + then:
> + required:
> + - touchscreen-size-x
> + - touchscreen-size-y
And I think it makes sense to add this to disallow using this ugly
hack with the normal compatibles:
else:
attn-gpios: false
Looking at the only user (pxa300-raumfeld-controller), it supplies
the same GPIO as IRQ and as GPIO, so it is actually a software
limitation. Instead of implementing the software level based IRQ
handling in the gpio driver, it was hacked into the EETI driver.
Looks like this legacy platform is pretty much dead, otherwise I
would have suggested to simply switch it to the new binding/driver.
Greetings,
-- Sebastian
> required:
> - compatible
> - reg
> - interrupts
> - - touchscreen-size-x
> - - touchscreen-size-y
>
> additionalProperties: false
>
> @@ -51,6 +65,7 @@ examples:
> i2c {
> #address-cells = <1>;
> #size-cells = <0>;
> +
> touchscreen@2a {
> compatible = "eeti,exc3000";
> reg = <0x2a>;
> @@ -62,3 +77,19 @@ examples:
> touchscreen-swapped-x-y;
> };
> };
> +
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> + #include "dt-bindings/interrupt-controller/irq.h"
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + touchscreen@2a {
> + compatible = "eeti,exc3000-i2c";
> + reg = <0x2a>;
> + interrupt-parent = <&gpio>;
> + interrupts = <123 IRQ_TYPE_EDGE_RISING>;
> + attn-gpios = <&gpio 123 GPIO_ACTIVE_HIGH>;
> + };
> + };
I would also drop the example, nobody should use this :)
> diff --git a/Documentation/devicetree/bindings/input/touchscreen/eeti.txt b/Documentation/devicetree/bindings/input/touchscreen/eeti.txt
> deleted file mode 100644
> index 32b3712c916e..000000000000
> --- a/Documentation/devicetree/bindings/input/touchscreen/eeti.txt
> +++ /dev/null
> @@ -1,30 +0,0 @@
> -Bindings for EETI touchscreen controller
> -
> -Required properties:
> -- compatible: should be "eeti,exc3000-i2c"
> -- reg: I2C address of the chip. Should be set to <0xa>
> -- interrupts: interrupt to which the chip is connected
> -
> -Optional properties:
> -- attn-gpios: A handle to a GPIO to check whether interrupt is still
> - latched. This is necessary for platforms that lack
> - support for level-triggered IRQs.
> -
> -The following optional properties described in touchscreen.txt are
> -also supported:
> -
> -- touchscreen-inverted-x
> -- touchscreen-inverted-y
> -- touchscreen-swapped-x-y
> -
> -Example:
> -
> -i2c-master {
> - touchscreen@a {
> - compatible = "eeti,exc3000-i2c";
> - reg = <0xa>;
> - interrupt-parent = <&gpio>;
> - interrupts = <123 IRQ_TYPE_EDGE_RISING>;
> - attn-gpios = <&gpio 123 GPIO_ACTIVE_HIGH>;
> - };
> -};
> --
> 2.43.0
>
> base-commit: 8b789f2b7602a818e7c7488c74414fae21392b63
> branch: drop-touchscreen.txt
>
Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)
Powered by blists - more mailing lists