[v3,5/5] ARM: dts: imx6dl-yapp4: Enable the MPR121 touchkey controller on Hydra
diff mbox series

Message ID 1570083176-8231-6-git-send-email-michal.vokac@ysoft.com
State New
Headers show
Series
  • Add polling mode to the MPR121 touchkey
Related show

Commit Message

Michal Vokáč Oct. 3, 2019, 6:12 a.m. UTC
Add the touch keyboard present on Hydra board. The controller
is connected only using I2C lines. The interrupt line is not
available hence we use the polling mode.

Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
---
Changes since v2:
 - None

Changes since v1:
 - Use poll-interval property name instead of linux,poll-interval.

 arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 13 +++++++++++++
 arch/arm/boot/dts/imx6dl-yapp4-hydra.dts   |  4 ++++
 2 files changed, 17 insertions(+)

Comments

Michal Vokáč Oct. 16, 2019, 6:07 a.m. UTC | #1
On 03. 10. 19 8:12, Michal Vokáč wrote:
> Add the touch keyboard present on Hydra board. The controller
> is connected only using I2C lines. The interrupt line is not
> available hence we use the polling mode.
> 
> Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
> ---

This should ideally go through the input tree with the rest of
the changes that add support for the poll-interval.

Shawn, can you ack this so Dmitry can take it, please?

Thank you,
Michal

> Changes since v2:
>   - None
> 
> Changes since v1:
>   - Use poll-interval property name instead of linux,poll-interval.
> 
>   arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 13 +++++++++++++
>   arch/arm/boot/dts/imx6dl-yapp4-hydra.dts   |  4 ++++
>   2 files changed, 17 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
> index e8d800fec637..6507bfc0141a 100644
> --- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
> +++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
> @@ -4,6 +4,7 @@
>   
>   #include <dt-bindings/gpio/gpio.h>
>   #include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/input/input.h>
>   #include <dt-bindings/pwm/pwm.h>
>   
>   / {
> @@ -330,6 +331,18 @@
>   		vcc-supply = <&sw2_reg>;
>   		status = "disabled";
>   	};
> +
> +	touchkeys: keys@5a {
> +		compatible = "fsl,mpr121-touchkey";
> +		reg = <0x5a>;
> +		vdd-supply = <&sw2_reg>;
> +		autorepeat;
> +		linux,keycodes = <KEY_1>, <KEY_2>, <KEY_3>, <KEY_4>, <KEY_5>,
> +				<KEY_6>, <KEY_7>, <KEY_8>, <KEY_9>,
> +				<KEY_BACKSPACE>, <KEY_0>, <KEY_ENTER>;
> +		poll-interval = <50>;
> +		status = "disabled";
> +	};
>   };
>   
>   &iomuxc {
> diff --git a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
> index f97927064750..84c275bfdd38 100644
> --- a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
> +++ b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
> @@ -45,6 +45,10 @@
>   	status = "okay";
>   };
>   
> +&touchkeys {
> +	status = "okay";
> +};
> +
>   &usdhc3 {
>   	status = "okay";
>   };
>
Shawn Guo Oct. 25, 2019, 2:48 a.m. UTC | #2
On Wed, Oct 16, 2019 at 08:07:22AM +0200, Michal Vokáč wrote:
> On 03. 10. 19 8:12, Michal Vokáč wrote:
> >Add the touch keyboard present on Hydra board. The controller
> >is connected only using I2C lines. The interrupt line is not
> >available hence we use the polling mode.
> >
> >Signed-off-by: Michal Vokáč <michal.vokac@ysoft.com>
> >---
> 
> This should ideally go through the input tree with the rest of
> the changes that add support for the poll-interval.

Not really necessary.  The patches can reach linux-next and mainline
through different trees, as long as there is no hard dependency which
could break build or cause regression on any of the trees.

Applied to imx/dt branch.

Shawn

Patch
diff mbox series

diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
index e8d800fec637..6507bfc0141a 100644
--- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
+++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
@@ -4,6 +4,7 @@ 
 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/input/input.h>
 #include <dt-bindings/pwm/pwm.h>
 
 / {
@@ -330,6 +331,18 @@ 
 		vcc-supply = <&sw2_reg>;
 		status = "disabled";
 	};
+
+	touchkeys: keys@5a {
+		compatible = "fsl,mpr121-touchkey";
+		reg = <0x5a>;
+		vdd-supply = <&sw2_reg>;
+		autorepeat;
+		linux,keycodes = <KEY_1>, <KEY_2>, <KEY_3>, <KEY_4>, <KEY_5>,
+				<KEY_6>, <KEY_7>, <KEY_8>, <KEY_9>,
+				<KEY_BACKSPACE>, <KEY_0>, <KEY_ENTER>;
+		poll-interval = <50>;
+		status = "disabled";
+	};
 };
 
 &iomuxc {
diff --git a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
index f97927064750..84c275bfdd38 100644
--- a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
+++ b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
@@ -45,6 +45,10 @@ 
 	status = "okay";
 };
 
+&touchkeys {
+	status = "okay";
+};
+
 &usdhc3 {
 	status = "okay";
 };