[meta-freescale] [meta-fsl-arm][PATCH v3] linux-imx_3.0.35: Enables eGalax touchscreen on i.MX6Q Sabre machines
Leonardo Sandoval
leonardo.sandoval at freescale.com
Fri Jan 18 12:46:21 PST 2013
Enables the touchscreen functionality on i.MX6 Sabre Platforms using
the eGalax Driver. Tested on imx6qsabresd and imxqsabreauto machines.
[YOCTO #3573]
Signed-off-by: Leonardo Sandoval <leonardo.sandoval at freescale.com>
---
Changed since v2:
- Patched reworked, Kconfig option added instead of adding the macro on the driver
...Kconfig-option-for-single-pointer-support.patch | 68 ++++++++++++++++++++
recipes-kernel/linux/linux-imx_3.0.35.bb | 3 +-
2 files changed, 70 insertions(+), 1 deletion(-)
create mode 100644 recipes-kernel/linux/linux-imx/egalax-Kconfig-option-for-single-pointer-support.patch
diff --git a/recipes-kernel/linux/linux-imx/egalax-Kconfig-option-for-single-pointer-support.patch b/recipes-kernel/linux/linux-imx/egalax-Kconfig-option-for-single-pointer-support.patch
new file mode 100644
index 0000000..b47202b
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx/egalax-Kconfig-option-for-single-pointer-support.patch
@@ -0,0 +1,68 @@
+From 3e71f2f90dcc5649c364ea659f34932ef737443f Mon Sep 17 00:00:00 2001
+From: Leonardo Sandoval <leonardo.sandoval at freescale.com>
+Date: Fri, 18 Jan 2013 12:47:56 -0600
+Subject: [PATCH] egalax: Kconfig option for single pointer support
+
+Enables touchscreen functionality on i.MX6 Sabre Platforms. Tested
+on i.MX6 SabreAuto and i.MX6 SabreSD boards.
+
+Upstream-Status: Pending
+---
+ drivers/input/touchscreen/Kconfig | 9 +++++++++
+ drivers/input/touchscreen/egalax_ts.c | 6 +++---
+ 2 files changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
+index 7cf975a..151d746 100755
+--- a/drivers/input/touchscreen/Kconfig
++++ b/drivers/input/touchscreen/Kconfig
+@@ -199,6 +199,15 @@ config TOUCHSCREEN_ELAN
+ To compile this driver as a module, choose M here: the
+ module will be called elan-touch.
+
++config TOUCHSCREEN_EGALAX_SINGLE_TOUCH
++ bool "EETI eGalax touchscreen as single-touch"
++ default y
++ depends on TOUCHSCREEN_EGALAX
++ help
++ If you say yes here you get single-touch touchscreen support
++ on the eGalax I2C controller.
++ If you say "no", you'll get the normal multi-touch.
++
+ config TOUCHSCREEN_FUJITSU
+ tristate "Fujitsu serial touchscreen"
+ select SERIO
+diff --git a/drivers/input/touchscreen/egalax_ts.c b/drivers/input/touchscreen/egalax_ts.c
+index fff8afe..17c2f43 100644
+--- a/drivers/input/touchscreen/egalax_ts.c
++++ b/drivers/input/touchscreen/egalax_ts.c
+@@ -139,7 +139,7 @@ retry:
+ events[id].x = x;
+ events[id].y = y;
+
+-#ifdef FORCE_SINGLE_POINTER_SUPPORT
++#ifdef CONFIG_TOUCHSCREEN_EGALAX_SINGLE_TOUCH
+ input_report_abs(input_dev, ABS_X, x);
+ input_report_abs(input_dev, ABS_Y, y);
+ input_event(data->input_dev, EV_KEY, BTN_TOUCH, 1);
+@@ -166,7 +166,7 @@ retry:
+ dev_dbg(&client->dev, "release id:%d\n", id);
+ events[id].valid = 0;
+ events[id].status = 0;
+-#ifdef FORCE_SINGLE_POINTER_SUPPORT
++#ifdef CONFIG_TOUCHSCREEN_EGALAX_SINGLE_TOUCH
+ input_report_key(input_dev, BTN_TOUCH, 0);
+ input_report_abs(input_dev, ABS_PRESSURE, 0);
+ #else
+@@ -257,7 +257,7 @@ static int __devinit egalax_ts_probe(struct i2c_client *client,
+ input_set_abs_params(input_dev, ABS_X, 0, 32767, 0, 0);
+ input_set_abs_params(input_dev, ABS_Y, 0, 32767, 0, 0);
+
+-#ifndef FORCE_SINGLE_POINTER_SUPPORT
++#ifndef CONFIG_TOUCHSCREEN_EGALAX_SINGLE_TOUCH
+ input_set_abs_params(input_dev, ABS_MT_POSITION_X, 0, 32767, 0, 0);
+ input_set_abs_params(input_dev, ABS_MT_POSITION_Y, 0, 32767, 0, 0);
+ input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR, 0, 255, 0, 0);
+--
+1.7.9.5
+
diff --git a/recipes-kernel/linux/linux-imx_3.0.35.bb b/recipes-kernel/linux/linux-imx_3.0.35.bb
index 9f1e320..0009422 100644
--- a/recipes-kernel/linux/linux-imx_3.0.35.bb
+++ b/recipes-kernel/linux/linux-imx_3.0.35.bb
@@ -3,7 +3,7 @@
include linux-imx.inc
-PR = "${INC_PR}.7"
+PR = "${INC_PR}.8"
COMPATIBLE_MACHINE = "(mx6)"
@@ -12,6 +12,7 @@ SRCREV = "059685632ebd37a89e60cbb1e6dd535b3b08c3be"
LOCALVERSION = "-12.09.01+yocto"
SRC_URI += "file://fix_getrusage_for_perf.patch \
+ file://egalax-Kconfig-option-for-single-pointer-support.patch \
"
# iMX6Q SabreLITE changes done by Boundary Devices
--
1.7.9.5
More information about the meta-freescale
mailing list