Message ID | 20250919075823.2557865-1-dario.binacchi@amarulasolutions.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
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@amarulasolutions.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@gmail.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 > To unsubscribe from this group and stop receiving emails from it, send an email to linux-amarula+unsubscribe@amarulasolutions.com.
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@gmail.com> -allOf: - - $ref: touchscreen.yaml# - properties: compatible: oneOf: - const: eeti,exc3000 - const: eeti,exc80h60 - const: eeti,exc80h84 + - const: eeti,exc3000-i2c - 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. 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 + 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>; + }; + }; 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>; - }; -};
Convert EETI touchscreen controller device tree binding to json-schema. Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.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