[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <67f8e922-941d-8538-15d7-5125356082d3@mentor.com>
Date: Tue, 24 Nov 2020 15:32:04 +0900
From: "Wang, Jiada" <jiada_wang@...tor.com>
To: Andre Muller <andre.muller@....de>,
Nick Dyer <nick.dyer@...ev.co.uk>
CC: Dmitry Torokhov <dmitry.torokhov@...il.com>,
"George G. Davis" <george_davis@...tor.com>,
<linux-kernel@...r.kernel.org>
Subject: Re: [Regression]: Commit 74d905d2 breaks the touchpad and touchscreen
of Google Chromebook "samus"
Hi Andre
Thanks for the log,
Hmmm, from the log (also as you have observed)
Seems "data->use_retrigen_workaround" is true on your device
so workaround mxt_process_messages_until_invalid() is used.
which is as same as with the commit reverted,
I am not sure what caused IRQ get generated.
@dmitry
I would suggest to revert the commit until we find out the root cause
Thanks,
Jiada
On 2020/11/24 15:15, Andre Muller wrote:
> On 24/11/2020 04.02, Wang, Jiada wrote:
>> Hello Andre
>>
>> Thanks for the log,
>> can you add more debug information like following diff,
>> and get full log?
>
> Hi Jiada,
>
> I added the warnings, but none of them triggers.
> I double-checked the generated object file, it includes the debug strings.
> (Also tested that touchscreen/touchpad don't work, as expected.)
>
> Please find the full log attached.
>
> Thank you,
> Andre
>
>
>>
>> diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c
>> b/drivers/input/touchscreen/atmel_mxt_ts.c
>> index 98f17fa3a892..60bccd5c42f6 100644
>> --- a/drivers/input/touchscreen/atmel_mxt_ts.c
>> +++ b/drivers/input/touchscreen/atmel_mxt_ts.c
>> @@ -1298,21 +1298,29 @@ static int mxt_check_retrigen(struct mxt_data
>> *data)
>> data->use_retrigen_workaround = false;
>>
>> irqd = irq_get_irq_data(data->irq);
>> - if (!irqd)
>> + if (!irqd) {
>> + dev_warn(&client->dev, "unable to get IRQ data\n");
>> return -EINVAL;
>> + }
>>
>> - if (irqd_is_level_type(irqd))
>> + if (irqd_is_level_type(irqd)) {
>> + dev_warn(&client->dev, "IRQ is level type\n");
>> return 0;
>> + }
>>
>> if (data->T18_address) {
>> error = __mxt_read_reg(client,
>> data->T18_address +
>> MXT_COMMS_CTRL,
>> 1, &val);
>> - if (error)
>> + if (error) {
>> + dev_warn(&client->dev, "failed to read reg:
>> MXT_COMMS_CTRL\n");
>> return error;
>> + }
>>
>> - if (val & MXT_COMMS_RETRIGEN)
>> + if (val & MXT_COMMS_RETRIGEN) {
>> + dev_warn(&client->dev, "RETRIGEN feature
>> available\n");
>> return 0;
>> + }
>> }
>>
>> dev_warn(&client->dev, "Enabling RETRIGEN workaround\n");
>>
>>
>> Thanks,
>> Jiada
>>
>> On 2020/11/05 23:23, Andre Muller wrote:
>>> On 05/11/2020 14.25, Wang, Jiada wrote:
>>>> Hi Andre
>>>>
>>>> Thanks for your report,
>>>> could you also please post the log when with this commit reverted?
>>>>
>>>> Thanks,
>>>> Jiada
>>>
>>> Shure!
>>> The full dmesg with the revert is attached.
>>>
>>> The atmel_mxt bits are:
>>>
>>> [ 0.195879] atmel_mxt_ts i2c-ATML0000:01: Family: 164 Variant: 17
>>> Firmware V1.0.AA Objects: 32
>>> [ 0.211712] atmel_mxt_ts i2c-ATML0000:01: Direct firmware load for
>>> maxtouch.cfg failed with error -2
>>> [ 0.212986] atmel_mxt_ts i2c-ATML0000:01: Touchscreen size X960Y540
>>> [ 0.213025] input: Atmel maXTouch Touchpad as
>>> /devices/pci0000:00/INT3432:00/i2c-0/i2c-ATML0000:01/input/input4
>>> [ 0.219208] atmel_mxt_ts i2c-ATML0001:01: Family: 164 Variant: 13
>>> Firmware V1.0.AA Objects: 41
>>> [ 0.238825] atmel_mxt_ts i2c-ATML0001:01: Direct firmware load for
>>> maxtouch.cfg failed with error -2
>>> [ 0.238949] intel_rapl_common: Found RAPL domain package
>>> [ 0.238955] intel_rapl_common: Found RAPL domain core
>>> [ 0.238961] intel_rapl_common: Found RAPL domain uncore
>>> [ 0.238966] intel_rapl_common: Found RAPL domain dram
>>> [ 0.240121] atmel_mxt_ts i2c-ATML0001:01: Touchscreen size X2559Y1699
>>> [ 0.240157] input: Atmel maXTouch Touchscreen as
>>> /devices/pci0000:00/INT3433:00/i2c-1/i2c-ATML0001:01/input/input5
>>>
>>> Regards,
>>> Andre
>>>
>>>>
>>>> On 2020/11/04 17:13, Andre wrote:
>>>>> Hi,
>>>>>
>>>>> commit 74d905d2: Input: atmel_mxt_ts - only read messages in
>>>>> mxt_acquire_irq() when necessary
>>>>>
>>>>> breaks the touchpad and touchscreen of the 2015 Chromebook Pixel
>>>>> "Samus".
>>>>>
>>>>> Reverting the commit from the current git tree gets them to work
>>>>> again.
>>>>>
>>>>> I am not at all shure what info to include, but I will happily provide
>>>>> it on request.
>>>>>
>>>>> The dmesgs of a boot with commit 74d905d2 show "Enabling RETRIGEN
>>>>> workaround", but otherwise looks the same as a boot without.
>>>>>
>>>>> Here is the relevant bit (with 74d905d2):
>>>>>
>>>>> atmel_mxt_ts i2c-ATML0000:01: Family: 164 Variant: 17 Firmware V1.0.AA
>>>>> Objects: 32
>>>>> atmel_mxt_ts i2c-ATML0000:01: Enabling RETRIGEN workaround
>>>>> atmel_mxt_ts i2c-ATML0000:01: Direct firmware load for maxtouch.cfg
>>>>> failed with error -2
>>>>> atmel_mxt_ts i2c-ATML0000:01: Touchscreen size X960Y540
>>>>> input: Atmel maXTouch Touchpad as
>>>>> /devices/pci0000:00/INT3432:00/i2c-0/i2c-ATML0000:01/input/input4
>>>>> atmel_mxt_ts i2c-ATML0001:01: Family: 164 Variant: 13 Firmware V1.0.AA
>>>>> Objects: 41
>>>>> atmel_mxt_ts i2c-ATML0001:01: Enabling RETRIGEN workaround
>>>>> atmel_mxt_ts i2c-ATML0001:01: Direct firmware load for maxtouch.cfg
>>>>> failed with error -2
>>>>>
>>>>> Thank you,
>>>>> Andre Müller
>>>
>
Powered by blists - more mailing lists