From: Sjoerd Simons <sjoerd.simons@xxxxxxxxxxxxxxx> 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.simons@xxxxxxxxxxxxxxx> [javier.martinez: added linux,gpio-keymap property and changed IRQ type] Signed-off-by: Javier Martinez Canillas <javier.martinez@xxxxxxxxxxxxxxx> --- 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 devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html