Messages in this thread | | | Subject | Re: [Regression]: Commit 74d905d2 breaks the touchpad and touchscreen of Google Chromebook "samus" | From | "Wang, Jiada" <> | Date | Tue, 24 Nov 2020 15:32:04 +0900 |
| |
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 >>> >
| |