diff options
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.patch | 46 |
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 |