aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorNaveen Krishna Ch <ch.naveen@samsung.com>2010-05-19 22:39:52 -0400
committerBen Dooks <ben-linux@fluff.org>2010-05-20 01:14:57 -0400
commit85b14a3fc4036473ec6776d8e5d92c022155d581 (patch)
treecb49e0a7bb94f04f10800bb8a26e29498c4774b9 /arch/arm
parent504d36e91ac12ccdb0e1193cee7bef9831a1c99e (diff)
ARM: S3C64XX: Add Touchscreen support for S3C64XX
This patch adds touchscreen support for S3C64XX. Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> [ben-linux@fluff.org: minor title fix] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-s3c64xx/Kconfig1
-rw-r--r--arch/arm/mach-s3c64xx/mach-smdk6410.c12
2 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
index 69e9fbfea917..1f2f412b0200 100644
--- a/arch/arm/mach-s3c64xx/Kconfig
+++ b/arch/arm/mach-s3c64xx/Kconfig
@@ -90,6 +90,7 @@ config MACH_SMDK6410
90 select S3C_DEV_HSMMC1 90 select S3C_DEV_HSMMC1
91 select S3C_DEV_I2C1 91 select S3C_DEV_I2C1
92 select S3C_DEV_FB 92 select S3C_DEV_FB
93 select SAMSUNG_DEV_TS
93 select S3C_DEV_USB_HOST 94 select S3C_DEV_USB_HOST
94 select S3C_DEV_USB_HSOTG 95 select S3C_DEV_USB_HSOTG
95 select S3C64XX_SETUP_SDHCI 96 select S3C64XX_SETUP_SDHCI
diff --git a/arch/arm/mach-s3c64xx/mach-smdk6410.c b/arch/arm/mach-s3c64xx/mach-smdk6410.c
index 9d51455feb31..d0c6e9bdc686 100644
--- a/arch/arm/mach-s3c64xx/mach-smdk6410.c
+++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c
@@ -64,6 +64,8 @@
64#include <plat/clock.h> 64#include <plat/clock.h>
65#include <plat/devs.h> 65#include <plat/devs.h>
66#include <plat/cpu.h> 66#include <plat/cpu.h>
67#include <plat/adc.h>
68#include <plat/ts.h>
67 69
68#define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK 70#define UCON S3C2410_UCON_DEFAULT | S3C2410_UCON_UCLK
69#define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB 71#define ULCON S3C2410_LCON_CS8 | S3C2410_LCON_PNONE | S3C2410_LCON_STOPB
@@ -262,6 +264,8 @@ static struct platform_device *smdk6410_devices[] __initdata = {
262 &smdk6410_lcd_powerdev, 264 &smdk6410_lcd_powerdev,
263 265
264 &smdk6410_smsc911x, 266 &smdk6410_smsc911x,
267 &s3c_device_adc,
268 &s3c_device_ts,
265}; 269};
266 270
267#ifdef CONFIG_REGULATOR 271#ifdef CONFIG_REGULATOR
@@ -596,6 +600,12 @@ static struct i2c_board_info i2c_devs1[] __initdata = {
596 { I2C_BOARD_INFO("24c128", 0x57), }, /* Samsung S524AD0XD1 */ 600 { I2C_BOARD_INFO("24c128", 0x57), }, /* Samsung S524AD0XD1 */
597}; 601};
598 602
603static struct s3c2410_ts_mach_info s3c_ts_platform __initdata = {
604 .delay = 10000,
605 .presc = 49,
606 .oversampling_shift = 2,
607};
608
599static void __init smdk6410_map_io(void) 609static void __init smdk6410_map_io(void)
600{ 610{
601 u32 tmp; 611 u32 tmp;
@@ -625,6 +635,8 @@ static void __init smdk6410_machine_init(void)
625 s3c_i2c1_set_platdata(NULL); 635 s3c_i2c1_set_platdata(NULL);
626 s3c_fb_set_platdata(&smdk6410_lcd_pdata); 636 s3c_fb_set_platdata(&smdk6410_lcd_pdata);
627 637
638 s3c24xx_ts_set_platdata(&s3c_ts_platform);
639
628 /* configure nCS1 width to 16 bits */ 640 /* configure nCS1 width to 16 bits */
629 641
630 cs1 = __raw_readl(S3C64XX_SROM_BW) & 642 cs1 = __raw_readl(S3C64XX_SROM_BW) &