On Mon, Jan 31, 2022 at 11:28:40AM +0100, Oleksij Rempel wrote: > The tsc2046 is an ADC used as touchscreen controller. To share as mach much > code as possible, we should use it as actual ADC + virtual touchscreen > controller. > With this patch we make use of the new kernel IIO and HID infrastructure. > > Signed-off-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> > --- > arch/arm/boot/dts/imx6dl-plym2m.dts | 59 +++++++++++++++++++++-------- > arch/arm/boot/dts/imx6dl-prtvt7.dts | 57 +++++++++++++++++++++------- > arch/arm/boot/dts/imx6dl-victgo.dts | 59 ++++++++++++++++++++++------- > 3 files changed, 132 insertions(+), 43 deletions(-) > > diff --git a/arch/arm/boot/dts/imx6dl-plym2m.dts b/arch/arm/boot/dts/imx6dl-plym2m.dts > index 60fe5f14666e..73c7622bfe0f 100644 > --- a/arch/arm/boot/dts/imx6dl-plym2m.dts > +++ b/arch/arm/boot/dts/imx6dl-plym2m.dts > @@ -101,6 +101,18 @@ reg_12v0: regulator-12v0 { > regulator-min-microvolt = <12000000>; > regulator-max-microvolt = <12000000>; > }; > + > + touchscreen { > + compatible = "resistive-adc-touch"; > + io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>, > + <&adc_ts 5>; > + io-channel-names = "y", "z1", "z2", "x"; > + touchscreen-min-pressure = <64687>; > + touchscreen-inverted-x; > + touchscreen-inverted-y; > + touchscreen-x-plate-ohms = <300>; > + touchscreen-y-plate-ohms = <800>; > + }; > }; > > &can1 { > @@ -129,26 +141,41 @@ &ecspi2 { > pinctrl-0 = <&pinctrl_ecspi2>; > status = "okay"; > > - touchscreen@0 { > - compatible = "ti,tsc2046"; > + adc_ts: adc@0 { > + compatible = "ti,tsc2046e-adc"; > reg = <0>; > pinctrl-0 = <&pinctrl_tsc2046>; > pinctrl-names ="default"; > - spi-max-frequency = <100000>; > - interrupts-extended = <&gpio3 20 IRQ_TYPE_EDGE_FALLING>; > - pendown-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>; > + spi-max-frequency = <1000000>; > + interrupts-extended = <&gpio3 20 IRQ_TYPE_LEVEL_LOW>; > + #io-channel-cells = <1>; I quickly skimmed the patch - we seem to loose the pendown-gpio in most of the patches - I do not see it replaced. Sam