linux/drivers/input/touchscreen
Nick Dyer 8efaa5e5a9 Input: atmel_mxt_ts - recover from bootloader on probe
The MXT device may be in bootloader mode on probe, due to:
1) APP CRC failure, either:
  a) flash corruption
  b) bad power or other intermittent problem while checking CRC
2) If the device has been reset 10 or more times without accessing comms
3) Warm probe, device was in bootloader mode already

This code attempts to recover from 1(b) and 3.

There is an additional complexity: we have to try two possible bootloader
addresses because the mapping is not one-to-one and we don't know the exact
model yet.

Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk>
Acked-by: Yufeng Shen <miletus@chromium.org>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
2014-07-23 14:42:11 -07:00
..
88pm860x-ts.c Input: 88pm860x-ts - switch to using managed resources 2014-05-29 00:26:35 -07:00
ad7877.c Input: ads7877 - remove bitrotted comment 2014-05-14 16:39:47 -07:00
ad7879-i2c.c Input: remove use of __devexit 2012-11-24 00:05:38 -08:00
ad7879-spi.c Input: ad7879-spi - remove redundant spi_set_drvdata 2013-09-20 09:58:29 -07:00
ad7879.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
ad7879.h
ads7846.c Linux 3.15-rc5 2014-05-14 16:49:19 -07:00
atmel_mxt_ts.c Input: atmel_mxt_ts - recover from bootloader on probe 2014-07-23 14:42:11 -07:00
atmel_tsadcc.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
atmel-wm97xx.c Input: atmel-wm97xx - fix compile error 2013-11-20 21:15:52 -08:00
auo-pixcir-ts.c Input: auo-pixcir-ts - make of_device_id array const 2014-05-14 16:39:58 -07:00
bu21013_ts.c Input: bu21013_ts - add support for Device Tree booting 2012-11-27 23:05:19 -08:00
cy8ctmg110_ts.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
cyttsp4_core.c Input: cyttsp4 - remove unnecessary work pending test 2013-11-20 21:15:26 -08:00
cyttsp4_core.h Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
cyttsp4_i2c.c Input: cyttsp4 - I2C driver for Cypress TMA4XX touchscreen devices 2013-06-30 21:24:24 -07:00
cyttsp4_spi.c Input: cyttsp4 - replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO 2013-11-11 00:01:45 -08:00
cyttsp_core.c Linux 3.13-rc4 2013-12-16 02:04:49 -08:00
cyttsp_core.h Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
cyttsp_i2c_common.c Input: cyttsp - include appropriate header file in cyttsp_i2c_common.c 2013-12-15 02:54:04 -08:00
cyttsp_i2c.c Input: cyttsp - I2C driver split into two modules 2013-06-30 21:24:16 -07:00
cyttsp_spi.c Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
da9034-ts.c Input: da9034-ts - switch to using managed resources 2014-05-28 23:48:36 -07:00
da9052_tsi.c Input: da9052_tsi - remove redundant platform_set_drvdata() 2013-05-05 20:14:41 -07:00
dynapro.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
edt-ft5x06.c Input: edt-ft5x06 - remove unnecessary null test 2014-07-18 10:53:28 -07:00
eeti_ts.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
egalax_ts.c Input: egalax_ts - make of_device_id array const 2014-05-14 16:39:59 -07:00
elo.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
fujitsu_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
gunze.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hampshire.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hp680_ts_input.c
htcpen.c Input: htcpen - remove redundant dev_set_drvdata 2013-09-18 07:53:30 -07:00
ili210x.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
inexio.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
intel-mid-touch.c Input: intel-mid-touch - switch to using managed resources 2014-05-29 00:26:33 -07:00
jornada720_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
Kconfig Input: add common DT binding for touchscreens 2014-05-29 00:05:59 -07:00
lpc32xx_ts.c Input: lpc32xx_ts - make of_device_id array const 2014-05-14 16:40:00 -07:00
mainstone-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
Makefile Input: add common DT binding for touchscreens 2014-05-29 00:05:59 -07:00
max11801_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
mc13783_ts.c Input: mc13783_ts - remove redundant platform_set_drvdata() 2013-05-05 20:14:52 -07:00
mcs5000_ts.c Input: mcs5000_ts - switch to using managed resources 2014-05-28 23:48:17 -07:00
migor_ts.c
mk712.c
mms114.c Input: mms114 - fix incorrect input device name 2014-05-28 23:48:03 -07:00
mtouch.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
of_touchscreen.c Input: add common DT binding for touchscreens 2014-05-29 00:05:59 -07:00
pcap_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
penmount.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pixcir_i2c_ts.c Input: pixcir_i2c_ts - implement wakeup from suspend 2014-05-18 23:25:57 -07:00
s3c2410_ts.c Input: s3c2410_ts - fix preparing/enabling clock 2014-07-20 14:40:53 -07:00
st1232.c PM / QoS: Add type to dev_pm_qos_add_ancestor_request() arguments 2014-02-11 00:36:00 +01:00
stmpe-ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
sun4i-ts.c Input: sun4i-ts - add support for temperature sensor 2014-05-14 16:40:06 -07:00
sur40.c Input: sur40 - suppress false uninitialized variable warning 2013-12-01 22:17:35 -08:00
ti_am335x_tsc.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-01-24 17:17:30 -08:00
touchit213.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchright.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchwin.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tps6507x-ts.c Input: tps6507x-ts - convert to polled input device infrastructure 2013-07-01 11:38:41 -07:00
tsc40.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tsc2005.c Input: tsc2005 - add DT support 2014-05-29 00:06:00 -07:00
tsc2007.c Input: tsc2007 - convert to use devres-managed resources 2013-11-25 18:27:56 -08:00
ucb1400_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
usbtouchscreen.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
w90p910_ts.c Input: w90p910_ts - remove redundant platform_set_drvdata() 2013-05-08 09:04:16 -07:00
wacom_i2c.c Input: wacom_i2c - implement hovering capability 2013-06-18 23:19:00 -07:00
wacom_w8001.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
wm97xx-core.c Input: use dev_get_platdata() 2013-12-06 02:06:29 -08:00
wm831x-ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
wm9705.c
wm9712.c Input: wm9712 - fix dev_dbg newlines 2013-03-12 08:50:20 -07:00
wm9713.c
zforce_ts.c Input: zforce - add regulator handling 2014-07-21 10:28:53 -07:00
zylonite-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00