diff mbox series

[v2,6/6] arch/arm: reMarkable2: Enable wacom_i2c

Message ID 20210121065643.342-7-alistair@alistair23.me (mailing list archive)
State Superseded
Headers show
Series Add Wacom I2C support to rM2 | expand

Commit Message

Alistair Francis Jan. 21, 2021, 6:56 a.m. UTC
Enable the wacom_i2c touchscreen for the reMarkable2.

Signed-off-by: Alistair Francis <alistair@alistair23.me>
---
 arch/arm/boot/dts/imx7d-remarkable2.dts | 41 +++++++++++++++++++++++++
 arch/arm/configs/imx_v6_v7_defconfig    |  1 +
 2 files changed, 42 insertions(+)

Comments

Marco Felsch Jan. 22, 2021, 3:32 p.m. UTC | #1
Hi,

thanks for the patch.

On 21-01-20 22:56, Alistair Francis wrote:
> Enable the wacom_i2c touchscreen for the reMarkable2.
> 
> Signed-off-by: Alistair Francis <alistair@alistair23.me>
> ---
>  arch/arm/boot/dts/imx7d-remarkable2.dts | 41 +++++++++++++++++++++++++
>  arch/arm/configs/imx_v6_v7_defconfig    |  1 +

Those two changes should be splitted and the dts patch should be named:
"ARM: dts: imx7d: remarkable2: add wacom digitizer device".

>  2 files changed, 42 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts
> index fba55a0e028a..8052d884a5e5 100644
> --- a/arch/arm/boot/dts/imx7d-remarkable2.dts
> +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
> @@ -150,6 +150,30 @@ &dma_apbh {
>  	status = "disabled";
>  };
>  
> +&i2c1 {
> +	clock-frequency = <400000>;
> +	pinctrl-names = "default", "sleep";
> +	pinctrl-0 = <&pinctrl_i2c1>;
> +	pinctrl-1 = <&pinctrl_i2c1>;

No need to specify the sleep state if both are using the same pinctrl
config.

> +	status = "okay";
> +
> +	digitizer: wacom-i2c@9 {

this should be:
        wacom_digitizer: digitizer@9 {

> +		pinctrl-names = "default", "sleep";
> +		pinctrl-0 = <&pinctrl_wacom>;
> +		pinctrl-1 = <&pinctrl_wacom>;

Same here, sleep and default refer to the same state.

> +		compatible = "wacom,wacom-i2c";
> +		reg = <0x09>;

compatible and reg are always the first to properties.

> +		interrupt-parent = <&gpio1>;
> +		interrupts = <1 2>;

Please use defines.

> +		flip-tilt-x;
> +		flip-tilt-y;
> +		flip-pos-x;
> +		flip-pos-y;
> +		flip-distance;
> +		vdd-supply = <&reg_digitizer>;

Where is this regulator added?

> +	};
> +};
> +
>  &sdma {
>  	status = "okay";
>  };
> @@ -221,6 +245,16 @@ &wdog1 {
>  };
>  
>  &iomuxc_lpsr {
> +	pinctrl_wacom: wacomgrp {
> +		fsl,pins = <
> +			/*MX7D_PAD_LPSR_GPIO1_IO00__GPIO1_IO0	0x00000074 /* WACOM RESET */
> +			MX7D_PAD_LPSR_GPIO1_IO01__GPIO1_IO1	0x00000034 /* WACOM INT */
> +			MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4	0x00000074 /* PDCTB */
> +			/*MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5	0x00000014 /* FWE */
> +			/*MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6	0x00000014 /* WACOM PWR ENABLE */
> +		>;
> +	};

Pls, sort this alphabetical.

> +
>  	pinctrl_digitizer_reg: digitizerreggrp {
>  		fsl,pins = <
>  			/* DIGITIZER_PWR_EN */
> @@ -236,6 +270,13 @@ MX7D_PAD_SAI1_RX_SYNC__GPIO6_IO16	0x59
>  		>;
>  	};
>  
> +	pinctrl_i2c1: i2c1grp {
> +		fsl,pins = <
> +			MX7D_PAD_I2C1_SDA__I2C1_SDA		0x4000007f
> +			MX7D_PAD_I2C1_SCL__I2C1_SCL		0x4000007f
> +		>;
> +	};
> +
>  	pinctrl_uart1: uart1grp {
>  		fsl,pins = <
>  			MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX	0x79
> diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
> index fa9229616106..2fc8dc6a8b0a 100644
> --- a/arch/arm/configs/imx_v6_v7_defconfig
> +++ b/arch/arm/configs/imx_v6_v7_defconfig
> @@ -167,6 +167,7 @@ CONFIG_TOUCHSCREEN_DA9052=y
>  CONFIG_TOUCHSCREEN_EGALAX=y
>  CONFIG_TOUCHSCREEN_GOODIX=y
>  CONFIG_TOUCHSCREEN_ILI210X=y
> +CONFIG_TOUCHSCREEN_WACOM_I2C=y
>  CONFIG_TOUCHSCREEN_MAX11801=y
>  CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
>  CONFIG_TOUCHSCREEN_EDT_FT5X06=y
> -- 
> 2.29.2
> 
> 
>
Alistair Francis Jan. 23, 2021, 8:04 a.m. UTC | #2
On Fri, Jan 22, 2021 at 7:32 AM Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> Hi,
>
> thanks for the patch.
>
> On 21-01-20 22:56, Alistair Francis wrote:
> > Enable the wacom_i2c touchscreen for the reMarkable2.
> >
> > Signed-off-by: Alistair Francis <alistair@alistair23.me>
> > ---
> >  arch/arm/boot/dts/imx7d-remarkable2.dts | 41 +++++++++++++++++++++++++
> >  arch/arm/configs/imx_v6_v7_defconfig    |  1 +
>
> Those two changes should be splitted and the dts patch should be named:
> "ARM: dts: imx7d: remarkable2: add wacom digitizer device".
>
> >  2 files changed, 42 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > index fba55a0e028a..8052d884a5e5 100644
> > --- a/arch/arm/boot/dts/imx7d-remarkable2.dts
> > +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > @@ -150,6 +150,30 @@ &dma_apbh {
> >       status = "disabled";
> >  };
> >
> > +&i2c1 {
> > +     clock-frequency = <400000>;
> > +     pinctrl-names = "default", "sleep";
> > +     pinctrl-0 = <&pinctrl_i2c1>;
> > +     pinctrl-1 = <&pinctrl_i2c1>;
>
> No need to specify the sleep state if both are using the same pinctrl
> config.
>
> > +     status = "okay";
> > +
> > +     digitizer: wacom-i2c@9 {
>
> this should be:
>         wacom_digitizer: digitizer@9 {
>
> > +             pinctrl-names = "default", "sleep";
> > +             pinctrl-0 = <&pinctrl_wacom>;
> > +             pinctrl-1 = <&pinctrl_wacom>;
>
> Same here, sleep and default refer to the same state.
>
> > +             compatible = "wacom,wacom-i2c";
> > +             reg = <0x09>;
>
> compatible and reg are always the first to properties.
>
> > +             interrupt-parent = <&gpio1>;
> > +             interrupts = <1 2>;
>
> Please use defines.

I have addressed all your comments.

>
> > +             flip-tilt-x;
> > +             flip-tilt-y;
> > +             flip-pos-x;
> > +             flip-pos-y;
> > +             flip-distance;
> > +             vdd-supply = <&reg_digitizer>;
>
> Where is this regulator added?

It's already in the DT, it will be added with the initial commit
(which is currently on the list).

Alistair

>
> > +     };
> > +};
> > +
> >  &sdma {
> >       status = "okay";
> >  };
> > @@ -221,6 +245,16 @@ &wdog1 {
> >  };
> >
> >  &iomuxc_lpsr {
> > +     pinctrl_wacom: wacomgrp {
> > +             fsl,pins = <
> > +                     /*MX7D_PAD_LPSR_GPIO1_IO00__GPIO1_IO0   0x00000074 /* WACOM RESET */
> > +                     MX7D_PAD_LPSR_GPIO1_IO01__GPIO1_IO1     0x00000034 /* WACOM INT */
> > +                     MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4     0x00000074 /* PDCTB */
> > +                     /*MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5   0x00000014 /* FWE */
> > +                     /*MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6   0x00000014 /* WACOM PWR ENABLE */
> > +             >;
> > +     };
>
> Pls, sort this alphabetical.
>
> > +
> >       pinctrl_digitizer_reg: digitizerreggrp {
> >               fsl,pins = <
> >                       /* DIGITIZER_PWR_EN */
> > @@ -236,6 +270,13 @@ MX7D_PAD_SAI1_RX_SYNC__GPIO6_IO16        0x59
> >               >;
> >       };
> >
> > +     pinctrl_i2c1: i2c1grp {
> > +             fsl,pins = <
> > +                     MX7D_PAD_I2C1_SDA__I2C1_SDA             0x4000007f
> > +                     MX7D_PAD_I2C1_SCL__I2C1_SCL             0x4000007f
> > +             >;
> > +     };
> > +
> >       pinctrl_uart1: uart1grp {
> >               fsl,pins = <
> >                       MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX    0x79
> > diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
> > index fa9229616106..2fc8dc6a8b0a 100644
> > --- a/arch/arm/configs/imx_v6_v7_defconfig
> > +++ b/arch/arm/configs/imx_v6_v7_defconfig
> > @@ -167,6 +167,7 @@ CONFIG_TOUCHSCREEN_DA9052=y
> >  CONFIG_TOUCHSCREEN_EGALAX=y
> >  CONFIG_TOUCHSCREEN_GOODIX=y
> >  CONFIG_TOUCHSCREEN_ILI210X=y
> > +CONFIG_TOUCHSCREEN_WACOM_I2C=y
> >  CONFIG_TOUCHSCREEN_MAX11801=y
> >  CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
> >  CONFIG_TOUCHSCREEN_EDT_FT5X06=y
> > --
> > 2.29.2
> >
> >
> >
>
> --
> Pengutronix e.K.                           |                             |
> Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
> 31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts
index fba55a0e028a..8052d884a5e5 100644
--- a/arch/arm/boot/dts/imx7d-remarkable2.dts
+++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
@@ -150,6 +150,30 @@  &dma_apbh {
 	status = "disabled";
 };
 
+&i2c1 {
+	clock-frequency = <400000>;
+	pinctrl-names = "default", "sleep";
+	pinctrl-0 = <&pinctrl_i2c1>;
+	pinctrl-1 = <&pinctrl_i2c1>;
+	status = "okay";
+
+	digitizer: wacom-i2c@9 {
+		pinctrl-names = "default", "sleep";
+		pinctrl-0 = <&pinctrl_wacom>;
+		pinctrl-1 = <&pinctrl_wacom>;
+		compatible = "wacom,wacom-i2c";
+		reg = <0x09>;
+		interrupt-parent = <&gpio1>;
+		interrupts = <1 2>;
+		flip-tilt-x;
+		flip-tilt-y;
+		flip-pos-x;
+		flip-pos-y;
+		flip-distance;
+		vdd-supply = <&reg_digitizer>;
+	};
+};
+
 &sdma {
 	status = "okay";
 };
@@ -221,6 +245,16 @@  &wdog1 {
 };
 
 &iomuxc_lpsr {
+	pinctrl_wacom: wacomgrp {
+		fsl,pins = <
+			/*MX7D_PAD_LPSR_GPIO1_IO00__GPIO1_IO0	0x00000074 /* WACOM RESET */
+			MX7D_PAD_LPSR_GPIO1_IO01__GPIO1_IO1	0x00000034 /* WACOM INT */
+			MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4	0x00000074 /* PDCTB */
+			/*MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5	0x00000014 /* FWE */
+			/*MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6	0x00000014 /* WACOM PWR ENABLE */
+		>;
+	};
+
 	pinctrl_digitizer_reg: digitizerreggrp {
 		fsl,pins = <
 			/* DIGITIZER_PWR_EN */
@@ -236,6 +270,13 @@  MX7D_PAD_SAI1_RX_SYNC__GPIO6_IO16	0x59
 		>;
 	};
 
+	pinctrl_i2c1: i2c1grp {
+		fsl,pins = <
+			MX7D_PAD_I2C1_SDA__I2C1_SDA		0x4000007f
+			MX7D_PAD_I2C1_SCL__I2C1_SCL		0x4000007f
+		>;
+	};
+
 	pinctrl_uart1: uart1grp {
 		fsl,pins = <
 			MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX	0x79
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index fa9229616106..2fc8dc6a8b0a 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -167,6 +167,7 @@  CONFIG_TOUCHSCREEN_DA9052=y
 CONFIG_TOUCHSCREEN_EGALAX=y
 CONFIG_TOUCHSCREEN_GOODIX=y
 CONFIG_TOUCHSCREEN_ILI210X=y
+CONFIG_TOUCHSCREEN_WACOM_I2C=y
 CONFIG_TOUCHSCREEN_MAX11801=y
 CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
 CONFIG_TOUCHSCREEN_EDT_FT5X06=y