[PATCH v3 1/3] ARM: dts: Add Peach Pit dts entry for Atmel touchpad

From: Javier Martinez Canillas
Date: Wed Aug 27 2014 - 10:25:17 EST


From: Sjoerd Simons <sjoerd.simons@xxxxxxxxxxxxxxx>

The Peach Pit board has an Atmel maXTouch trackpad device.
Add the needed Device Tree nodes to support it.

This Device Tree change is based on the Chrome OS 3.8 tree
but adapted to use the mainline Atmel maXTouch DT binding.

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

Changes since v2:
- Add spaces around '=' on properties. Suggested by Andreas Faerber.

Changes since v1:
- Change trackpad IRQ pad function from 0x0 (GPIO input) to 0xf (GPIO IRQ).
suggested by Tomasz Figa.
- Remove BTN_TOOL_* from "linux,gpio-keymap" property since those are set
by input mt core if INPUT_MT_POINTER is set. Suggested by Nick Dyer.
- Use correct values for "linux,gpio-keymap" property. Suggested by Nick Dyer.
- Remove support for Peach Pi board since it uses a different Atmel touchpad
that requires an Atmel object protocol (T100) not supported by the driver.
- Use IRQ type constants from <dt-bindings/interrupt-controller/irq.h> instead
of magic numbers. Suggested by Andreas Faerber.
---
arch/arm/boot/dts/exynos5420-peach-pit.dts | 31 ++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5420-peach-pit.dts b/arch/arm/boot/dts/exynos5420-peach-pit.dts
index ab06148..a3358fc 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,29 @@
};
};

+&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 = < KEY_RESERVED
+ KEY_RESERVED
+ 0 /* GPIO 0 */
+ 0 /* GPIO 1 */
+ 0 /* GPIO 2 */
+ BTN_LEFT /* GPIO 3 */
+ KEY_RESERVED
+ KEY_RESERVED >;
+ };
+};
+
&hsi2c_9 {
status = "okay";
clock-frequency = <400000>;
@@ -241,6 +265,13 @@
samsung,pin-drv = <0>;
};

+ trackpad_irq: trackpad-irq {
+ samsung,pins = "gpx1-1";
+ samsung,pin-function = <0xf>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
+ };
+
power_key_irq: power-key-irq {
samsung,pins = "gpx1-2";
samsung,pin-function = <0>;
--
2.0.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/