diff options
author | Nelson Castillo <arhuaco@freaks-unidos.net> | 2009-10-24 14:25:45 -0500 |
---|---|---|
committer | Lars-Peter Clausen <lars@metafoo.de> | 2009-10-24 22:07:59 +0200 |
commit | 36a5e8676f2d19482cd4d9837c12d24c58882f8a (patch) | |
tree | 6256af526125b138624115b28ec5d66356b99bb7 | |
parent | 374f8036d1f74352a2d9a90f740bef6ecc33f5cd (diff) |
touchscreen patches for om-gta02-2.6.31
On Sat, Oct 24, 2009 at 3:04 AM, Nelson Castillo
<arhuaco@freaks-unidos.net> wrote:
> Hi there. I finally made this work. I tested with: cat /dev/input/touchscreen0 | hexdump
>
> I wonder why it didn't work with X... This rootfs works with other drivers I've tested (even with the upstream kernel).
Problem found.
Patch attached.
From: Nelson Castillo <arhuaco@freaks-unidos.net>
Date: Sat, 24 Oct 2009 14:12:58 -0500
Subject: [PATCH] Add auto-pst
Without these lines the TS doesn't work.
I didn't check who the author of the lines is.
Signed-off-by: Nelson Castillo <arhuaco@freaks-unidos.net>
-rw-r--r-- | arch/arm/mach-s3c2410/include/mach/ts.h | 2 | ||||
-rw-r--r-- | arch/arm/plat-s3c24xx/adc.c | 8 | ||||
-rw-r--r-- | drivers/input/touchscreen/ts_filter_chain.c | 4 |
3 files changed, 11 insertions, 3 deletions
diff --git a/arch/arm/mach-s3c2410/include/mach/ts.h b/arch/arm/mach-s3c2410/include/mach/ts.h index ffd73d5bda2..ac0c727d155 100644 --- a/arch/arm/mach-s3c2410/include/mach/ts.h +++ b/arch/arm/mach-s3c2410/include/mach/ts.h @@ -16,7 +16,7 @@ #ifndef __ASM_ARM_TS_H #define __ASM_ARM_TS_H -#include <../drivers/input/touchscreen/ts_filter.h> +#include <linux/input/touchscreen/ts_filter.h> struct s3c2410_ts_mach_info { /* Touchscreen delay. */ diff --git a/arch/arm/plat-s3c24xx/adc.c b/arch/arm/plat-s3c24xx/adc.c index d3e53c6352d..9cff2320e11 100644 --- a/arch/arm/plat-s3c24xx/adc.c +++ b/arch/arm/plat-s3c24xx/adc.c @@ -72,10 +72,18 @@ static LIST_HEAD(adc_pending); #define adc_dbg(_adc, msg...) dev_dbg(&(_adc)->pdev->dev, msg) +#define AUTOPST (S3C2410_ADCTSC_YM_SEN | S3C2410_ADCTSC_YP_SEN | \ + S3C2410_ADCTSC_XP_SEN | S3C2410_ADCTSC_AUTO_PST | \ + S3C2410_ADCTSC_XY_PST(0)) + static inline void s3c_adc_convert(struct adc_device *adc) { unsigned con = readl(adc->regs + S3C2410_ADCCON); + if (adc->cur->is_ts) + writel(S3C2410_ADCTSC_PULL_UP_DISABLE | AUTOPST, + adc->regs + S3C2410_ADCTSC); + con |= S3C2410_ADCCON_ENABLE_START; writel(con, adc->regs + S3C2410_ADCCON); } diff --git a/drivers/input/touchscreen/ts_filter_chain.c b/drivers/input/touchscreen/ts_filter_chain.c index 054ffc16d35..8b5e2145b27 100644 --- a/drivers/input/touchscreen/ts_filter_chain.c +++ b/drivers/input/touchscreen/ts_filter_chain.c @@ -19,8 +19,8 @@ #include <linux/kernel.h> #include <linux/device.h> -#include <linux/input/trouchscreen/ts_filter_chain.h> -#include <linux/input/trouchscreen/ts_filter.h> +#include <linux/input/touchscreen/ts_filter_chain.h> +#include <linux/input/touchscreen/ts_filter.h> /* * Tux, would you like the following function in /lib? |