[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <884a9ce0-b6db-6716-e366-e4c8ed7b4910@mentor.com>
Date: Wed, 12 Feb 2020 17:39:07 +0900
From: "Wang, Jiada" <jiada_wang@...tor.com>
To: Bartosz Szczepanek <bsz@...ihalf.com>, <nick.dyer@...ev.co.uk>
CC: <Andrew_Gabbasov@...tor.com>, <benjamin.tissoires@...hat.com>,
<dmitry.torokhov@...il.com>, <erosca@...adit-jv.com>,
<jikos@...nel.org>, <linux-input@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <nick@...anahar.org>,
<rydberg@...math.org>, <levinale@...gle.com>, <rad@...ihalf.com>
Subject: Re: [PATCH v6 24/48] Input: atmel_mxt_ts - make bootloader interrupt
driven
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
>
Powered by blists - more mailing lists