summaryrefslogtreecommitdiff
path: root/packages/linux/linux-ezx-2.6.21/pcap-ts.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-ezx-2.6.21/pcap-ts.patch')
-rw-r--r--packages/linux/linux-ezx-2.6.21/pcap-ts.patch46
1 files changed, 22 insertions, 24 deletions
diff --git a/packages/linux/linux-ezx-2.6.21/pcap-ts.patch b/packages/linux/linux-ezx-2.6.21/pcap-ts.patch
index a07ec1abe9..d2b44b3c9a 100644
--- a/packages/linux/linux-ezx-2.6.21/pcap-ts.patch
+++ b/packages/linux/linux-ezx-2.6.21/pcap-ts.patch
@@ -1,14 +1,14 @@
Index: linux-2.6.21/drivers/input/touchscreen/Kconfig
===================================================================
---- linux-2.6.21.orig/drivers/input/touchscreen/Kconfig 2007-05-03 17:39:18.000000000 -0300
-+++ linux-2.6.21/drivers/input/touchscreen/Kconfig 2007-05-03 17:44:12.000000000 -0300
+--- linux-2.6.21.orig/drivers/input/touchscreen/Kconfig 2007-05-08 14:19:21.000000000 -0300
++++ linux-2.6.21/drivers/input/touchscreen/Kconfig 2007-05-08 14:22:21.000000000 -0300
@@ -164,4 +164,13 @@
To compile this driver as a module, choose M here: the
module will be called ucb1400_ts.
+config TOUCHSCREEN_PCAP
+ tristate "Motorola PCAP touchscreen"
-+ depends on PXA_EZX
++ depends on EZX_PCAP
+ help
+ Say Y here if you have a Motorola EZX telephone and
+ want to support the built-in touchscreen.
@@ -19,8 +19,8 @@ Index: linux-2.6.21/drivers/input/touchscreen/Kconfig
Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21/drivers/input/touchscreen/pcap_ts.c 2007-05-04 04:17:22.000000000 -0300
-@@ -0,0 +1,372 @@
++++ linux-2.6.21/drivers/input/touchscreen/pcap_ts.c 2007-05-08 14:28:43.000000000 -0300
+@@ -0,0 +1,375 @@
+/*
+ * pcap_ts.c - Touchscreen driver for Motorola PCAP2 based touchscreen as found
+ * in the EZX phone platform.
@@ -47,7 +47,6 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+#include <linux/string.h>
+#include <linux/pm.h>
+#include <linux/timer.h>
-+//#include <linux/config.h>
+#include <linux/interrupt.h>
+#include <linux/platform_device.h>
+#include <linux/input.h>
@@ -66,6 +65,10 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+#define COORDINATE 2
+#define STANDBY 3
+
++extern int ezx_pcap_read(u_int8_t, u_int32_t *);
++extern int ezx_pcap_write(u_int8_t, u_int32_t);
++extern int ezx_pcap_bit_set(u_int32_t, u_int8_t);
++
+struct pcap_ts {
+ int irq_xy;
+ int irq_touch;
@@ -279,7 +282,7 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+ return ret;
+
+ err = request_irq(pcap_ts->irq_xy, pcap_ts_irq_xy, SA_INTERRUPT,
-+ "PCAP Touchscreen XY", pcap_ts);
++ "pcap-ts X/Y", pcap_ts);
+ if (err < 0) {
+ printk(KERN_ERR "pcap_ts: can't grab xy irq %d: %d\n",
+ pcap_ts->irq_xy, err);
@@ -287,7 +290,7 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+ }
+
+ err = request_irq(pcap_ts->irq_touch, pcap_ts_irq_touch, SA_INTERRUPT,
-+ "PCAP Touchscreen Touch", pcap_ts);
++ "pcap-ts touch", pcap_ts);
+ if (err < 0) {
+ printk(KERN_ERR "pcap_ts: can't grab touch irq %d: %d\n",
+ pcap_ts->irq_touch, err);
@@ -307,7 +310,7 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+ /* enable pressure interrupt */
+ ezx_pcap_bit_set(SSP_PCAP_ADJ_BIT_MSR_TSM, 0);
+
-+ input_dev->name = "EZX PCAP2 Touchscreen";
++ input_dev->name = "pcap-touchscreen";
+ input_dev->phys = "ezxts/input0";
+ input_dev->id.bustype = BUS_HOST;
+ input_dev->id.vendor = 0x0001;
@@ -395,13 +398,12 @@ Index: linux-2.6.21/drivers/input/touchscreen/pcap_ts.c
+MODULE_LICENSE("GPL");
Index: linux-2.6.21/arch/arm/mach-pxa/ezx.c
===================================================================
---- linux-2.6.21.orig/arch/arm/mach-pxa/ezx.c 2007-05-03 19:09:25.000000000 -0300
-+++ linux-2.6.21/arch/arm/mach-pxa/ezx.c 2007-05-03 19:15:57.000000000 -0300
-@@ -116,8 +116,32 @@
+--- linux-2.6.21.orig/arch/arm/mach-pxa/ezx.c 2007-05-08 14:19:21.000000000 -0300
++++ linux-2.6.21/arch/arm/mach-pxa/ezx.c 2007-05-08 14:52:47.000000000 -0300
+@@ -174,11 +174,36 @@
.resource = ezxemu_resources,
};
--/* OHCI Controller */
+/* PCAP_TS */
+struct resource pcap_ts_resources[] = {
+ [0] = {
@@ -415,7 +417,7 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx.c
+ .flags = IORESOURCE_IRQ,
+ }
+};
-
++
+struct platform_device pcap_ts_device = {
+ .name = "pcap-ts",
+ .id = -1,
@@ -426,23 +428,19 @@ Index: linux-2.6.21/arch/arm/mach-pxa/ezx.c
+ .resource = pcap_ts_resources,
+};
+
-+
-+/* OHCI Controller */
- static int ezx_ohci_init(struct device *dev)
- {
- /* for A780 support (connected with Neptune) */
-@@ -342,6 +366,7 @@
- &ezxpcap_device,
+ static struct platform_device *devices[] __initdata = {
+ &ezxssp_device,
&ezxbp_device,
+ &ezxpcap_device,
&ezxemu_device,
+ &pcap_ts_device,
};
- static void __init a780_init(void)
+ /* PM */
Index: linux-2.6.21/drivers/input/touchscreen/Makefile
===================================================================
---- linux-2.6.21.orig/drivers/input/touchscreen/Makefile 2007-05-03 18:50:12.000000000 -0300
-+++ linux-2.6.21/drivers/input/touchscreen/Makefile 2007-05-03 18:50:59.000000000 -0300
+--- linux-2.6.21.orig/drivers/input/touchscreen/Makefile 2007-05-08 14:19:21.000000000 -0300
++++ linux-2.6.21/drivers/input/touchscreen/Makefile 2007-05-08 14:22:21.000000000 -0300
@@ -16,3 +16,4 @@
obj-$(CONFIG_TOUCHSCREEN_TOUCHRIGHT) += touchright.o
obj-$(CONFIG_TOUCHSCREEN_TOUCHWIN) += touchwin.o