lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ