From: Sjoerd Simons <sjoerd.sim...@collabora.co.uk>

The Peach Pit and Pi boards have an Atmel maXTouch device.
Add the needed Device Tree nodes to support it.

Signed-off-by: Sjoerd Simons <sjoerd.sim...@collabora.co.uk>
[javier.martinez: added linux,gpio-keymap property and changed IRQ type]
Signed-off-by: Javier Martinez Canillas <javier.marti...@collabora.co.uk>
---

With only this patch the touchpad is probed but interrupts are not being
generated. The following is needed to have a fully functional touchpad:

[PATCH 1/2] "Input: atmel_mxt_ts - Get IRQ edge/level flags on DT booting"
https://lkml.org/lkml/2014/8/6/585

 arch/arm/boot/dts/exynos5420-peach-pit.dts | 29 +++++++++++++++++++++++++++++
 arch/arm/boot/dts/exynos5800-peach-pi.dts  | 29 +++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts 
b/arch/arm/boot/dts/exynos5420-peach-pit.dts
index 228a6b1..7dce444 100644
--- a/arch/arm/boot/dts/exynos5420-peach-pit.dts
+++ b/arch/arm/boot/dts/exynos5420-peach-pit.dts
@@ -11,6 +11,7 @@
 /dts-v1/;
 #include <dt-bindings/input/input.h>
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
 #include "exynos5420.dtsi"
 
 / {
@@ -157,6 +158,27 @@
        };
 };
 
+&hsi2c_8 {
+       status = "okay";
+       clock-frequency = <333000>;
+
+       trackpad@4b {
+               compatible="atmel,maxtouch";
+               reg=<0x4b>;
+               interrupt-parent=<&gpx1>;
+               interrupts=<1 IRQ_TYPE_EDGE_FALLING>;
+               wakeup-source;
+               pinctrl-names = "default";
+               pinctrl-0 = <&trackpad_irq>;
+               linux,gpio-keymap = < BTN_LEFT
+                                     BTN_TOOL_FINGER
+                                     BTN_TOOL_DOUBLETAP
+                                     BTN_TOOL_TRIPLETAP
+                                     BTN_TOOL_QUADTAP
+                                     BTN_TOOL_QUINTTAP >;
+       };
+};
+
 &hsi2c_9 {
        status = "okay";
        clock-frequency = <400000>;
@@ -249,6 +271,13 @@
                samsung,pin-drv = <0>;
        };
 
+       trackpad_irq: trackpad-irq {
+               samsung,pins = "gpx1-1";
+               samsung,pin-function = <0>;
+               samsung,pin-pud = <0>;
+               samsung,pin-drv = <0>;
+       };
+
        power_key_irq: power-key-irq {
                samsung,pins = "gpx1-2";
                samsung,pin-function = <0>;
diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts 
b/arch/arm/boot/dts/exynos5800-peach-pi.dts
index f3ee48b..de946b3 100644
--- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
+++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
@@ -11,6 +11,7 @@
 /dts-v1/;
 #include <dt-bindings/input/input.h>
 #include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
 #include "exynos5800.dtsi"
 
 / {
@@ -155,6 +156,27 @@
        };
 };
 
+&hsi2c_8 {
+       status = "okay";
+       clock-frequency = <333000>;
+
+       trackpad@4b {
+               compatible="atmel,maxtouch";
+               reg=<0x4b>;
+               interrupt-parent=<&gpx1>;
+               interrupts=<1 IRQ_TYPE_EDGE_FALLING>;
+               wakeup-source;
+               pinctrl-names = "default";
+               pinctrl-0 = <&trackpad_irq>;
+               linux,gpio-keymap = < BTN_LEFT
+                                     BTN_TOOL_FINGER
+                                     BTN_TOOL_DOUBLETAP
+                                     BTN_TOOL_TRIPLETAP
+                                     BTN_TOOL_QUADTAP
+                                     BTN_TOOL_QUINTTAP >;
+       };
+};
+
 &hsi2c_9 {
        status = "okay";
        clock-frequency = <400000>;
@@ -247,6 +269,13 @@
                samsung,pin-drv = <0>;
        };
 
+       trackpad_irq: trackpad-irq {
+               samsung,pins = "gpx1-1";
+               samsung,pin-function = <0>;
+               samsung,pin-pud = <0>;
+               samsung,pin-drv = <0>;
+       };
+
        power_key_irq: power-key-irq {
                samsung,pins = "gpx1-2";
                samsung,pin-function = <0>;
-- 
2.0.0.rc2

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to