Enable the wacom_i2c touchscreen for the reMarkable2.

Signed-off-by: Alistair Francis <alist...@alistair23.me>
---
 arch/arm/boot/dts/imx7d-remarkable2.dts | 61 +++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts 
b/arch/arm/boot/dts/imx7d-remarkable2.dts
index c3dda2b92fe6..ea1dd41023f9 100644
--- a/arch/arm/boot/dts/imx7d-remarkable2.dts
+++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
@@ -34,6 +34,19 @@ reg_brcm: regulator-brcm {
                startup-delay-us = <150>;
        };
 
+       reg_digitizer: regulator-digitizer {
+               compatible = "regulator-fixed";
+               regulator-name = "VDD_3V3_DIGITIZER";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               pinctrl-names = "default", "sleep";
+               pinctrl-0 = <&pinctrl_digitizer_reg>;
+               pinctrl-1 = <&pinctrl_digitizer_reg>;
+               gpio = <&gpio1 6 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+               startup-delay-us = <100000>; /* 100 ms */
+       };
+
        wifi_pwrseq: wifi_pwrseq {
                compatible = "mmc-pwrseq-simple";
                pinctrl-names = "default";
@@ -51,6 +64,28 @@ &clks {
        assigned-clock-rates = <0>, <32768>;
 };
 
+&i2c1 {
+       clock-frequency = <400000>;
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_i2c1>;
+       status = "okay";
+
+       wacom_digitizer: digitizer@9 {
+               compatible = "wacom,i2c-30";
+               reg = <0x09>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_wacom>;
+               interrupt-parent = <&gpio1>;
+               interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
+               flip-tilt-x;
+               flip-tilt-y;
+               flip-pos-x;
+               flip-pos-y;
+               flip-distance;
+               vdd-supply = <&reg_digitizer>;
+       };
+};
+
 &snvs_pwrkey {
        status = "okay";
 };
@@ -117,6 +152,25 @@ &wdog1 {
        fsl,ext-reset-output;
 };
 
+&iomuxc_lpsr {
+       pinctrl_digitizer_reg: digitizerreggrp {
+               fsl,pins = <
+                       /* DIGITIZER_PWR_EN */
+                       MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6     0x14
+               >;
+       };
+
+       pinctrl_wacom: wacomgrp {
+               fsl,pins = <
+                       /*MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5   0x00000014 /* 
FWE */
+                       MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4     0x00000074 /* 
PDCTB */
+                       MX7D_PAD_LPSR_GPIO1_IO01__GPIO1_IO1     0x00000034 /* 
WACOM INT */
+                       /*MX7D_PAD_LPSR_GPIO1_IO06__GPIO1_IO6   0x00000014 /* 
WACOM PWR ENABLE */
+                       /*MX7D_PAD_LPSR_GPIO1_IO00__GPIO1_IO0   0x00000074 /* 
WACOM RESET */
+               >;
+       };
+};
+
 &iomuxc {
        pinctrl_brcm_reg: brcmreggrp {
                fsl,pins = <
@@ -125,6 +179,13 @@ MX7D_PAD_SAI1_TX_BCLK__GPIO6_IO13  0x14
                >;
        };
 
+       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
-- 
2.31.1

Reply via email to