Hello Bartosz
On 2020/01/28 2:41, Bartosz Szczepanek wrote:
Hi,
I've been testing this patchset on Chromebook equipped with Atmel touchscreen &
touchpad. In my setup, this particular patch seems to introduce a regression
on firmware update:
localhost /sys/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-6/i2c-ATML0001:00 # echo maxtouch-ts.fw > update_fw
bash: echo: write error: Remote I/O error
Kernel logs show that the reason is failed I2C transfer:
[ 111.632131] atmel_mxt_ts i2c-ATML0001:00: Found bootloader addr:27 ID:21 version:4
[ 111.637711] atmel_mxt_ts i2c-ATML0001:00: Unlocking bootloader
[ 129.155091] atmel_mxt_ts i2c-ATML0001:00: Sent 1356 frames, 212224 bytes
[ 129.263269] atmel_mxt_ts i2c-ATML0001:00: The firmware update succeeded
[ 129.263952] atmel_mxt_ts i2c-ATML0001:00: __mxt_read_chunk: i2c transfer failed (-121)
[ 129.265072] atmel_mxt_ts i2c-ATML0001:00: mxt_bootloader_read: i2c recv failed (-121)
[ 129.265588] atmel_mxt_ts i2c-ATML0001:00: Trying alternate bootloader address
[ 129.266375] atmel_mxt_ts i2c-ATML0001:00: mxt_bootloader_read: i2c recv failed (-121)
Surprisingly, only touchscreen device is affected. When I checked out to
119e1b7e8481 ("Input: atmel_mxt_ts - refactor code to enter bootloader into
separate func") all worked fine. In between these commits I got some mixed
results, including timeout while waiting for completion:
[ 190.006174] atmel_mxt_ts i2c-ATML0001:00: Found bootloader addr:27 ID:21 version:4
[ 190.317819] atmel_mxt_ts i2c-ATML0001:00: Wait for completion timed out.
[ 190.318267] atmel_mxt_ts i2c-ATML0001:00: Update wait error -110
[ 190.319310] atmel_mxt_ts i2c-ATML0001:00: Unlocking bootloader
[ 208.369825] atmel_mxt_ts i2c-ATML0001:00: Sent 1356 frames, 212224 bytes
[ 208.536942] atmel_mxt_ts i2c-ATML0001:00: The firmware update succeeded
[ 208.544835] atmel_mxt_ts i2c-ATML0001:00: Family: 164 Variant: 14 Firmware V2.3.AA Objects: 40
[ 208.547623] atmel_mxt_ts i2c-ATML0001:00: Touchscreen size X4095Y2729
Some more details - the touchscreen device reports itself as:
atmel_mxt_ts i2c-ATML0001:00: Family: 164 Variant: 14 Firmware V2.3.AA Objects: 40
Due to Chromebook limitations on kernel version, I'm running 4.19 kernel
with patches backported from master (so that atmel_mxt_ts is aligned between
master and 4.19). The platform is Samsung Chromebook Pro.
I have found the root cause for the regression,
will submit v7 patch-set shortly,
if you could validate for the update,
it will be very helpful
thanks,
Jiada
Best regards,
Bartosz