diff options
author | Robert Collins <rcollins@nvidia.com> | 2011-08-15 15:59:17 -0700 |
---|---|---|
committer | Niket Sirsi <nsirsi@nvidia.com> | 2011-08-22 17:30:42 -0700 |
commit | 857e9e8ca9b133b27fdc7406ada329e03fc43a30 (patch) | |
tree | f87b1bea4354e9e2ab3a1eb85cefecf82b14ce51 | |
parent | ce4f84dc7022ced7c888b9ae2babebad2b987a38 (diff) |
input: touch: atmel_mxt_ts: Increase touch perf for SKU-2000.
Increase touchscreen performance for Cardhu SKU-2000 with touch
panel air gap gasket changes.
Bug 864735
Change-Id: I01137e8d31230cd1d1f5a7d25d82259cc732b1e5
Reviewed-on: http://git-master/r/47197
Reviewed-by: Narendra Damahe <ndamahe@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
Reviewed-by: Ali Ekici <aekici@nvidia.com>
Tested-by: Ali Ekici <aekici@nvidia.com>
Reviewed-by: Jonathan Mccaffrey <jmccaffrey@nvidia.com>
Tested-by: Jonathan Mccaffrey <jmccaffrey@nvidia.com>
-rw-r--r-- | arch/arm/mach-tegra/board-touch-atmel_maxtouch.c | 31 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-touch.c | 12 |
2 files changed, 41 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-touch-atmel_maxtouch.c b/arch/arm/mach-tegra/board-touch-atmel_maxtouch.c index a2ab2d990497..f79b42d38e74 100644 --- a/arch/arm/mach-tegra/board-touch-atmel_maxtouch.c +++ b/arch/arm/mach-tegra/board-touch-atmel_maxtouch.c @@ -111,6 +111,37 @@ static struct mxt_platform_data atmel_mxt_info = { /* .read_chg = &read_chg, */ .read_chg = NULL, }; + +#define MXT_CONFIG_CRC_SKU2000 0xA24D9A +static const u8 config_sku2000[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xFF, 0xFF, 0x32, 0x0A, 0x00, 0x14, 0x14, 0x19, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, + 0x1B, 0x2A, 0x00, 0x20, 0x3A, 0x04, 0x05, 0x00, //23=thr 2 di + 0x04, 0x04, 0x41, 0x0A, 0x0A, 0x0A, 0x0A, 0xFF, + 0x02, 0x55, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, //0A=limit + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, + 0x00, 0x00, 0x00, 0x05, 0x0A, 0x15, 0x1E, 0x00, + 0x00, 0x04, 0x00, 0x03, 0x3F, 0x64, 0x64, 0x01, + 0x0A, 0x14, 0x28, 0x4B, 0x00, 0x02, 0x00, 0x64, + 0x00, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x08, 0x10, 0x3C, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +void init_sku2000(void) +{ + struct mxt_platform_data *mxt = &atmel_mxt_info; + mxt->config = config_sku2000; + mxt->config_crc = MXT_CONFIG_CRC_SKU2000; +} #endif /* CONFIG_MACH_VENTANA, CONFIG_MACH_CARDHU */ #if defined(CONFIG_MACH_TEGRA_ENTERPRISE) diff --git a/arch/arm/mach-tegra/board-touch.c b/arch/arm/mach-tegra/board-touch.c index b3291f132b69..a759a688f5b3 100644 --- a/arch/arm/mach-tegra/board-touch.c +++ b/arch/arm/mach-tegra/board-touch.c @@ -93,8 +93,11 @@ Check your _defconfig file and remove all but one touch screen driver instances. /*** ATMEL Multitouch Support **********************************************/ #if defined(CONFIG_TOUCHSCREEN_ATMEL_MT_T9) || defined(CONFIG_TOUCHSCREEN_ATMEL_MXT) extern struct tegra_touchscreen_init atmel_mxt_init_data; +#if defined(CONFIG_TOUCHSCREEN_ATMEL_MXT) +extern void init_sku2000(void); +#define ATMEL_TOUCHSCREEN_SKU2000 0x0B00 +#endif #define ATMEL_TOUCHSCREEN_SKU 0x0A00 -#define ATMEL_TOUCHSCREEN_T25 0x0B00 #define ATMEL_TOUCHSCREEN_ENTERPRISE 0x0C00 #if defined(DEFAULT_SKU) && (MULTI_SKU == 0) #error ERROR! When MULTI_SKU=0, only one touch screen driver is supported at a time.\ @@ -181,8 +184,13 @@ int __init touch_init(void) switch (sku) { #if defined(CONFIG_TOUCHSCREEN_ATMEL_MT_T9) || defined(CONFIG_TOUCHSCREEN_ATMEL_MXT) +#if defined(CONFIG_TOUCHSCREEN_ATMEL_MXT) + case ATMEL_TOUCHSCREEN_SKU2000: + init_sku2000(); + /* Fall through */ +#endif + case ATMEL_TOUCHSCREEN_SKU: - case ATMEL_TOUCHSCREEN_T25: case ATMEL_TOUCHSCREEN_ENTERPRISE: retval = generic_touch_init(&atmel_mxt_init_data); break; |