From 8547ea9f8d0473ee4b3f89c249f23f43af47dc2d Mon Sep 17 00:00:00 2001 From: Du, Dudley Date: Thu, 25 Aug 2011 16:49:50 +0800 Subject: [PATCH 4/4] input:cyapa: add Cypress I2C touchpad board configuration to tegra2 seaboard Add platform data for Cypress I2C device into tegra2 seaboard platform to make it be supported in seaboard platform. BUG= TEST=Test on tegra2 seaboard platform device with cyapa driver. Signed-off-by: Du, Dudley --- arch/arm/mach-tegra/board-seaboard.c | 20 ++++++++++++++++++++ arch/arm/mach-tegra/board-seaboard.h | 1 + 2 files changed, 21 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-tegra/board-seaboard.c b/arch/arm/mach-tegra/board-seaboard.c index 56cbabf..595a2d5 100644 --- a/arch/arm/mach-tegra/board-seaboard.c +++ b/arch/arm/mach-tegra/board-seaboard.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include @@ -131,6 +132,24 @@ static struct i2c_board_info __initdata isl29018_device = { .irq = TEGRA_GPIO_TO_IRQ(TEGRA_GPIO_ISL29018_IRQ), }; +static struct cyapa_platform_data cyapa_i2c_platform_data = { + .flag = 0, + .gen = CYAPA_GEN3, + .power_state = CYAPA_PWR_ACTIVE, + .polling_interval_time_active = CYAPA_POLLING_INTERVAL_TIME_ACTIVE, + .polling_interval_time_lowpower = CYAPA_POLLING_INTERVAL_TIME_LOWPOWER, + .active_touch_timeout = CYAPA_ACTIVE_TOUCH_TIMEOUT, + .name = CYAPA_I2C_NAME, + .irq_gpio = TEGRA_GPIO_CYTP_INT, + .report_rate = CYAPA_REPORT_RATE, +}; + +static struct i2c_board_info __initdata cyapa_device = { + I2C_BOARD_INFO("cypress_i2c_apa", 0x67), + .irq = TEGRA_GPIO_TO_IRQ(TEGRA_GPIO_CYTP_INT), + .platform_data = &cyapa_i2c_platform_data, +}; + static struct i2c_board_info __initdata adt7461_device = { I2C_BOARD_INFO("adt7461", 0x4c), }; @@ -141,6 +160,7 @@ static void __init seaboard_i2c_init(void) gpio_direction_input(TEGRA_GPIO_ISL29018_IRQ); i2c_register_board_info(0, &isl29018_device, 1); + i2c_register_board_info(0, &cyapa_device, 1); i2c_register_board_info(3, &adt7461_device, 1); diff --git a/arch/arm/mach-tegra/board-seaboard.h b/arch/arm/mach-tegra/board-seaboard.h index d8415e1..28467b5 100644 --- a/arch/arm/mach-tegra/board-seaboard.h +++ b/arch/arm/mach-tegra/board-seaboard.h @@ -31,6 +31,7 @@ #define TEGRA_GPIO_MAGNETOMETER TEGRA_GPIO_PN5 #define TEGRA_GPIO_ISL29018_IRQ TEGRA_GPIO_PZ2 #define TEGRA_GPIO_AC_ONLINE TEGRA_GPIO_PV3 +#define TEGRA_GPIO_CYTP_INT TEGRA_GPIO_PW2 #define TPS_GPIO_BASE TEGRA_NR_GPIOS -- 1.7.5.1