Pixcir touchscreen device support is added to SMDK4X12 boards.

Signed-off-by: Sachin Kamat <[email protected]>
---
 arch/arm/mach-exynos/mach-smdk4x12.c |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-exynos/mach-smdk4x12.c 
b/arch/arm/mach-exynos/mach-smdk4x12.c
index fe772d8..0af6088 100644
--- a/arch/arm/mach-exynos/mach-smdk4x12.c
+++ b/arch/arm/mach-exynos/mach-smdk4x12.c
@@ -9,10 +9,12 @@
  * published by the Free Software Foundation.
 */
 
+#include <linux/delay.h>
 #include <linux/gpio.h>
 #include <linux/i2c.h>
 #include <linux/input.h>
 #include <linux/io.h>
+#include <linux/input/pixcir_ts.h>
 #include <linux/mfd/max8997.h>
 #include <linux/mmc/host.h>
 #include <linux/platform_device.h>
@@ -203,8 +205,34 @@ static struct i2c_board_info smdk4x12_i2c_devs3[] 
__initdata = {
        /* nothing here yet */
 };
 
+static void smdk4x12_ts_gpio_setup(void)
+{
+       int gpio_reset = EXYNOS4_GPM3(4);
+
+       gpio_request_one(gpio_reset, GPIOF_OUT_INIT_LOW, "TOUCH RESET");
+       mdelay(20);
+       gpio_direction_output(gpio_reset, 1);
+       mdelay(30);
+       s3c_gpio_setpull(EXYNOS4_GPX2(6), S3C_GPIO_PULL_NONE);
+}
+
+static int smdk4x12_ts_get_value(void)
+{
+       return gpio_get_value(EXYNOS4_GPX2(6));
+}
+
+static struct pixcir_ts_platform_data smdk4x12_ts_data = {
+       .attb_read_val = smdk4x12_ts_get_value,
+       .x_max = 480,
+       .y_max = 800,
+};
+
 static struct i2c_board_info smdk4x12_i2c_devs7[] __initdata = {
-       /* nothing here yet */
+       {
+               I2C_BOARD_INFO("pixcir_ts", 0x5C),
+               .irq            = IRQ_EINT(22),
+               .platform_data  = &smdk4x12_ts_data,
+       }
 };
 
 static struct samsung_bl_gpio_info smdk4x12_bl_gpio_info = {
@@ -293,6 +321,8 @@ static void __init smdk4x12_machine_init(void)
        s3c_sdhci2_set_platdata(&smdk4x12_hsmmc2_pdata);
        s3c_sdhci3_set_platdata(&smdk4x12_hsmmc3_pdata);
 
+       smdk4x12_ts_gpio_setup();
+
        platform_add_devices(smdk4x12_devices, ARRAY_SIZE(smdk4x12_devices));
 }
 
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to