lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ