summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Dyer <nick.dyer@itdev.co.uk>2014-07-23 12:45:26 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2014-07-23 14:42:10 -0700
commit44a0bab2154f07d6cb7ec6d929f6875a1f768f41 (patch)
tree47101b8c5279d24c5629ddefb837380390e0d081
parent385deb962aa26a324cad2e85352624b20c2ba52f (diff)
downloadlinux-stable-44a0bab2154f07d6cb7ec6d929f6875a1f768f41.tar.gz
linux-stable-44a0bab2154f07d6cb7ec6d929f6875a1f768f41.tar.bz2
linux-stable-44a0bab2154f07d6cb7ec6d929f6875a1f768f41.zip
Input: atmel_mxt_ts - add bootloader addresses for new chips
Later chips (for example mXT1664S) different mappings for bootloader addresses. This means that we must look at the family ID to determine which address to use. Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk> Acked-by: Benson Leung <bleung@chromium.org> Acked-by: Yufeng Shen <miletus@chromium.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r--drivers/input/touchscreen/atmel_mxt_ts.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
index bc1d276871c5..dc8133d6b914 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -387,6 +387,12 @@ static int mxt_lookup_bootloader_address(struct mxt_data *data)
switch (appmode) {
case 0x4a:
case 0x4b:
+ /* Chips after 1664S use different scheme */
+ if (data->info.family_id >= 0xa2) {
+ bootloader = appmode - 0x24;
+ break;
+ }
+ /* Fall through for normal case */
case 0x4c:
case 0x4d:
case 0x5a: