aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNelson Castillo <arhuaco@freaks-unidos.net>2009-10-24 14:25:45 -0500
committerLars-Peter Clausen <lars@metafoo.de>2009-12-21 17:15:49 +0100
commit98b541c7129eb1b884433bf28d09527875081fc6 (patch)
tree622926da99be88f9e7aad2433224676ca0675fe3
parentc0be5ad97fb0f722b8afded74256742c008991d9 (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.h2
-rw-r--r--arch/arm/plat-s3c24xx/adc.c8
-rw-r--r--drivers/input/touchscreen/ts_filter_chain.c4
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 3b16670b003..8c443153d05 100644
--- a/arch/arm/plat-s3c24xx/adc.c
+++ b/arch/arm/plat-s3c24xx/adc.c
@@ -76,10 +76,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?