]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
ARM: S5PV210: Add Touchscreen support for S5PV210
authorNaveen Krishna Ch <ch.naveen@samsung.com>
Thu, 20 May 2010 02:39:54 +0000 (11:39 +0900)
committerBen Dooks <ben-linux@fluff.org>
Thu, 20 May 2010 05:15:50 +0000 (14:15 +0900)
This patch adds touchscreen support for S5PV210.

Note: TSADC in S5PV210 support 2 touchscreen interfaces,
Only 1 is implemented as of now.

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>
arch/arm/mach-s5pv210/Kconfig
arch/arm/mach-s5pv210/cpu.c
arch/arm/mach-s5pv210/include/mach/map.h
arch/arm/mach-s5pv210/mach-smdkv210.c

index 7601c28e240b9e32aa2a5c2550a93a37a539f6d1..b05988f21ec2ac7f54741e2a1033a297a866c908 100644 (file)
@@ -25,6 +25,8 @@ config MACH_SMDKV210
        bool "SMDKV210"
        select CPU_S5PV210
        select ARCH_SPARSEMEM_ENABLE
+       select SAMSUNG_DEV_ADC
+       select SAMSUNG_DEV_TS
        help
          Machine support for Samsung SMDKV210
 
index 2b776eb5d150367dea5a20ffae96c6a6c516e354..359bdc8f3b664a1768f899e5c39c74ce37b79463 100644 (file)
@@ -74,6 +74,8 @@ static void s5pv210_idle(void)
 
 void __init s5pv210_map_io(void)
 {
+       s3c_device_adc.name     = "s3c64xx-adc";
+
        iotable_init(s5pv210_iodesc, ARRAY_SIZE(s5pv210_iodesc));
 }
 
index 5adcb9f26e449ef76504b10244cbd3570fb710dc..e8595708305558cad146f4c4bbd05139537c3acd 100644 (file)
 /* AC97 */
 #define S5PV210_PA_AC97                0xE2200000
 
+#define S5PV210_PA_ADC         (0xE1700000)
+
 /* compatibiltiy defines. */
 #define S3C_PA_UART            S5PV210_PA_UART
 #define S3C_PA_IIC             S5PV210_PA_IIC0
+#define SAMSUNG_PA_ADC         S5PV210_PA_ADC
 
 #endif /* __ASM_ARCH_MAP_H */
index 3c29e18528a5f3df6067e33b39b8506829f5fa56..b92beb6831aeae00671197ac410e8f4fcd82adbc 100644 (file)
@@ -25,6 +25,8 @@
 #include <plat/s5pv210.h>
 #include <plat/devs.h>
 #include <plat/cpu.h>
+#include <plat/adc.h>
+#include <plat/ts.h>
 
 /* Following are default values for UCON, ULCON and UFCON UART registers */
 #define S5PV210_UCON_DEFAULT   (S3C2410_UCON_TXILEVEL |        \
@@ -74,6 +76,14 @@ static struct s3c2410_uartcfg smdkv210_uartcfgs[] __initdata = {
 static struct platform_device *smdkv210_devices[] __initdata = {
        &s5pv210_device_iis0,
        &s5pv210_device_ac97,
+       &s3c_device_adc,
+       &s3c_device_ts,
+};
+
+static struct s3c2410_ts_mach_info s3c_ts_platform __initdata = {
+       .delay                  = 10000,
+       .presc                  = 49,
+       .oversampling_shift     = 2,
 };
 
 static void __init smdkv210_map_io(void)
@@ -85,6 +95,7 @@ static void __init smdkv210_map_io(void)
 
 static void __init smdkv210_machine_init(void)
 {
+       s3c24xx_ts_set_platdata(&s3c_ts_platform);
        platform_add_devices(smdkv210_devices, ARRAY_SIZE(smdkv210_devices));
 }