Issue metadata
Sign in to add a comment
|
Strago boards incorrectly describe touch IRQ |
||||||||||||||||||||||
Issue descriptionSimilarly to keyboard IRQ ( http://crbug.com/704198 ) the touch interrupt on Strago boards is also hard-coded. In addition to being fragile, it breaks replaying of edge-triggered interrupts, because the data provided in ACPI tables prevents kernel from building proper interrupt hierarchy. This breaks touchscreen resume on Kefka devices post M59 (it appears timings have changed slightly and we are now missing edge on resume).
,
Jun 21 2017
,
Jun 21 2017
We're also getting reports of failures to resume on case open with kefka if case has been closed for 1+ hours (resume works when re-opened minutes later). Seems related since this cropped up in 59 also but if it's not I can file a new bug, any idea?
,
Jun 21 2017
,
Jun 21 2017
Current M59 stable already has this issue. We should aim to get it fixed for a 3rd stable refresh as fix is unlikely to make it in today's build.
,
Jun 21 2017
Looks like corresponding b/ issue has a workaround hack. We'll get that merged into M59
,
Jun 21 2017
The 59 and 60 will have a simple workaround, we will land proper solution when it is ready.
,
Jun 27 2017
@gkihumba, I'm confused if in c#5 you're talking about the device failure to resume on case open, or if it's the touchscreen resume. Is this bug report also the same cause of failure to resume on case open?. Thanks!
,
Jul 5 2017
Polite ping on this one. Do we have any update?
,
Aug 18 2017
There is a CL for the issue https://crrev.com/c/540084, but Intel essentially owns firmware on Strago boards so they need to take care of it and qualify.
,
Nov 17 2017
,
Nov 28 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/7f69df0c15879aa0318c1eee4c4080cc86f28fbc commit 7f69df0c15879aa0318c1eee4c4080cc86f28fbc Author: Dmitry Torokhov <dtor@chromium.org> Date: Tue Nov 28 18:18:18 2017 Revert "Cyan: Fix Touchscreen Interrupt" This reverts commit 113872728e9ed4c696e73eecf3434aebdb527947: instead of hardcoding virtual interrupt numbers in BIOS/ASL (that changes as GPIO/IRQ subsystem in Linux changes), it should have been handled in the kernel (and it was handled later, by not considering GpioInt resources as suitable for GPIO output requests). BUG= chromium:734663 TEST=Boot on Cyan, verify touchscreen works Change-Id: I8b39523da227ccb11c16400093f87dd87ab284c9 Reviewed-on: https://chromium-review.googlesource.com/791991 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: Dmitry Torokhov <dtor@chromium.org> Commit-Queue: Dmitry Torokhov <dtor@chromium.org> [modify] https://crrev.com/7f69df0c15879aa0318c1eee4c4080cc86f28fbc/src/mainboard/google/cyan/acpi/mainboard.asl [modify] https://crrev.com/7f69df0c15879aa0318c1eee4c4080cc86f28fbc/src/mainboard/google/cyan/onboard.h
,
Nov 28 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/2ae384943bff6dfb55e1ddf0056d249c31fe9362 commit 2ae384943bff6dfb55e1ddf0056d249c31fe9362 Author: Dmitry Torokhov <dtor@chromium.org> Date: Tue Nov 28 18:20:39 2017 Cyan: mark board family as Intel_Strago Cyan belongs to Strago family, let's mark it as such. BUG= chromium:734663 TEST=Boot on Cyan, verify touchscreen works Change-Id: I0983e34692a81c31775add0d4742d5eff0adb710 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/791993 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/2ae384943bff6dfb55e1ddf0056d249c31fe9362/src/mainboard/google/cyan/Kconfig
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/d52b8bcde7e36676e1e1caa6d5ad903af63a3152 commit d52b8bcde7e36676e1e1caa6d5ad903af63a3152 Author: Dmitry Torokhov <dmitry.torokhov@gmail.com> Date: Thu Nov 30 02:04:57 2017 UPSTREAM: Input: elan_i2c - do not clobber interrupt trigger on x86 On x86 we historically used falling edge interrupts in the driver because that's how first Chrome devices were configured. They also did not use ACPI to enumerate I2C devices (because back then there was no kernel support for that), so trigger was hard-coded in the driver. However the controller behavior is much more reliable if we use level triggers, and that is how we configured ARM devices, and how want to configure newer x86 devices as well. All newer x86 boxes have their I2C devices enumerated in ACPI. Let's see if platform code (ACPI, DT) described interrupt and specified particular trigger type, and if so, let's use it instead of always clobbering trigger with IRQF_TRIGGER_FALLING. We will still use this trigger type as a fallback if platform code left interrupt trigger unconfigured. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=196761 Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> BUG= chromium:734663 TEST=Build and boot on Cyan with updated firmware, verify touchpad works (cherry picked from commit a4b0a58bb1420757593978cdb213dab022403a3e) Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Change-Id: I99ac8dc2fe805fa698d481f30848cebdb3cc50b0 Reviewed-on: https://chromium-review.googlesource.com/794330 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> [modify] https://crrev.com/d52b8bcde7e36676e1e1caa6d5ad903af63a3152/drivers/input/mouse/elan_i2c_core.c
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/bf360841c94afc306b8ebe13522dca1465b5d4ff commit bf360841c94afc306b8ebe13522dca1465b5d4ff Author: Dmitry Torokhov <dmitry.torokhov@gmail.com> Date: Thu Nov 30 09:13:08 2017 FROMLIST: Input: elants_i2c - do not clobber interrupt trigger on x86 This is similar to commit a4b0a58bb142 ("Input: elan_i2c - do not clobber interrupt trigger on x86") On x86 we historically used falling edge interrupts in the driver because that's how first Chrome devices were configured. They also did not use ACPI to enumerate I2C devices (because back then there was no kernel support for that), so trigger was hard-coded in the driver. However the controller behavior is much more reliable if we use level triggers, and that is how we configured ARM devices, and how want to configure newer x86 devices as well. All newer x86 boxes have their I2C devices enumerated in ACPI. Let's see if platform code (ACPI, DT) described interrupt and specified particular trigger type, and if so, let's use it instead of always clobbering trigger with IRQF_TRIGGER_FALLING. We will still use this trigger type as a fallback if platform code left interrupt trigger unconfigured. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> BUG= chromium:734663 TEST=Build and boot on Cyan with updated firmware, verify touchscreen works (am from https://patchwork.kernel.org/patch/10062223/) Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Change-Id: I92643bf19ebf68823b2aca0dc664c0ddc6369194 Reviewed-on: https://chromium-review.googlesource.com/794331 Reviewed-by: Guenter Roeck <groeck@chromium.org> [modify] https://crrev.com/bf360841c94afc306b8ebe13522dca1465b5d4ff/drivers/input/touchscreen/elants_i2c.c
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/75972a612bdc7d47376661f8877a70dd6ac16e73 commit 75972a612bdc7d47376661f8877a70dd6ac16e73 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 09:13:11 2017 CHROMIUM: Input: atmel_mxt_ts - request reset gpio as output Combine requesting reset GPIO and configuring it as output GPIO in one step, so that on ACPI systems GPIO _CRS fallback does not give GPIO used for interrupt and described as GpioInt() as reset GPIO. BUG= chromium:734663 TEST=Build and boot on Celes with updated firmware, verify touchscreen works Change-Id: Ib143846752040a5f3f375a2ee9f9babe5da34f1a Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/797927 Reviewed-by: Guenter Roeck <groeck@chromium.org> [modify] https://crrev.com/75972a612bdc7d47376661f8877a70dd6ac16e73/drivers/input/touchscreen/atmel_mxt_ts.c
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/3a5607d8de8f7175a1c3e038fdba3e73a6b2f717 commit 3a5607d8de8f7175a1c3e038fdba3e73a6b2f717 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 19:02:39 2017 Cyan: switch Touchpad and Touchscreen interrupts to be level-triggered The Elan touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot Cyan, verify that touchpad and touchscreen work. Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/791994 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/3a5607d8de8f7175a1c3e038fdba3e73a6b2f717/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/3a5607d8de8f7175a1c3e038fdba3e73a6b2f717/src/mainboard/google/cyan/gpio.c [modify] https://crrev.com/3a5607d8de8f7175a1c3e038fdba3e73a6b2f717/src/mainboard/google/cyan/acpi/mainboard.asl [modify] https://crrev.com/3a5607d8de8f7175a1c3e038fdba3e73a6b2f717/src/mainboard/google/cyan/gpio_pre_evt.c
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/9bc069b1e92a40b950a55b2b82b1879df70afc39 commit 9bc069b1e92a40b950a55b2b82b1879df70afc39 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 21:48:51 2017 Ultima: do not hardcode virtual interrupt numbers Instead of hardcoding virtual interrupt numbers that may change as the kernel changes, use GpioInt() resources to describe keyboard and touchscreen interrupt lines. BUG= chromium:704198 , chromium:734663 TEST=Build and boot Ultima, verify keyboard and touchpad work with newer kernels (4.14). Change-Id: I98d5726f5b8094d639fb40dfca128364f63bb30b Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/801339 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/9bc069b1e92a40b950a55b2b82b1879df70afc39/src/mainboard/google/ultima/onboard.h [modify] https://crrev.com/9bc069b1e92a40b950a55b2b82b1879df70afc39/src/mainboard/google/ultima/acpi/superio.asl [modify] https://crrev.com/9bc069b1e92a40b950a55b2b82b1879df70afc39/src/mainboard/google/ultima/acpi/mainboard.asl
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e99c7a26797566ded71177bc7fb36b108570a4c6 commit e99c7a26797566ded71177bc7fb36b108570a4c6 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 21:49:02 2017 coreboot: ultima: update BIOS version to 1.1 Now that coreboot on Ultima no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:801340 BUG= chromium:704198 , chromium:734663 TEST=Boot on Ultima, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/801342 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [rename] https://crrev.com/e99c7a26797566ded71177bc7fb36b108570a4c6/sys-boot/coreboot/coreboot-0.0.1-r1172.ebuild [modify] https://crrev.com/e99c7a26797566ded71177bc7fb36b108570a4c6/sys-boot/coreboot/files/configs/config.ultima
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/5df7663ea746adb3c3312265a673ff764bf64f64 commit 5df7663ea746adb3c3312265a673ff764bf64f64 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 21:49:14 2017 Ultima: switch Touchpad and Touchscreen interrupts to be level-triggered The Elan touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot Ultima, verify that touchpad and touchscreen work. Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/801341 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/5df7663ea746adb3c3312265a673ff764bf64f64/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/5df7663ea746adb3c3312265a673ff764bf64f64/src/mainboard/google/ultima/gpio.c [modify] https://crrev.com/5df7663ea746adb3c3312265a673ff764bf64f64/src/mainboard/google/ultima/acpi/mainboard.asl
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/95680b4766488b0f4e8eb5fbe48b789f1db985b7 commit 95680b4766488b0f4e8eb5fbe48b789f1db985b7 Author: Dmitry Torokhov <dmitry.torokhov@gmail.com> Date: Thu Nov 30 22:18:41 2017 UPSTREAM: Input: elan_i2c - do not clobber interrupt trigger on x86 On x86 we historically used falling edge interrupts in the driver because that's how first Chrome devices were configured. They also did not use ACPI to enumerate I2C devices (because back then there was no kernel support for that), so trigger was hard-coded in the driver. However the controller behavior is much more reliable if we use level triggers, and that is how we configured ARM devices, and how want to configure newer x86 devices as well. All newer x86 boxes have their I2C devices enumerated in ACPI. Let's see if platform code (ACPI, DT) described interrupt and specified particular trigger type, and if so, let's use it instead of always clobbering trigger with IRQF_TRIGGER_FALLING. We will still use this trigger type as a fallback if platform code left interrupt trigger unconfigured. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=196761 Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> BUG= chromium:734663 TEST=Build and boot on Cyan with updated firmware, verify touchpad works (cherry picked from commit a4b0a58bb1420757593978cdb213dab022403a3e) Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Change-Id: I99ac8dc2fe805fa698d481f30848cebdb3cc50b0 Reviewed-on: https://chromium-review.googlesource.com/794330 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Benson Leung <bleung@chromium.org> (cherry picked from commit d52b8bcde7e36676e1e1caa6d5ad903af63a3152) Reviewed-on: https://chromium-review.googlesource.com/799032 [modify] https://crrev.com/95680b4766488b0f4e8eb5fbe48b789f1db985b7/drivers/input/mouse/elan_i2c_core.c
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/b254084daa81918b30077881997709fc09d54240 commit b254084daa81918b30077881997709fc09d54240 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:34:23 2017 Celes: do not hardcode touchpad virtual interrupt number Instead of hardcoding virtual interrupt numbers that may change as the kernel changes, use GpioInt() reosurces to describe touchpad interrupt lines. BUG= chromium:734663 TEST=Boot on Celes, verify touchpad works Change-Id: Ia6b158e9d29b4ba5204b945d20b6930593a13d6a Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/798062 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/b254084daa81918b30077881997709fc09d54240/src/mainboard/google/celes/acpi/mainboard.asl
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/48b0788eee98a1ac1b6e1474e1d2dd0f4159501e commit 48b0788eee98a1ac1b6e1474e1d2dd0f4159501e Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:34:26 2017 Celes: mark board family as Intel_Strago Celes belongs to Strago family, let's mark it as such. BUG= chromium:734663 TEST=Boot on Celes, check dmidecode Change-Id: I0983e34692a81c31775add0d4742d5eff0adb710 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/798063 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/48b0788eee98a1ac1b6e1474e1d2dd0f4159501e/src/mainboard/google/celes/Kconfig
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/aa87de0f7214d0fdd3a070a0ef158801d1139ba6 commit aa87de0f7214d0fdd3a070a0ef158801d1139ba6 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:37:23 2017 coreboot: edgar: update BIOS version to 1.1 Now that coreboot on Edgar no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:798069 BUG= chromium:704198 , chromium:734663 TEST=Boot on Edgar, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/797941 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/aa87de0f7214d0fdd3a070a0ef158801d1139ba6/sys-boot/coreboot/files/configs/config.edgar [rename] https://crrev.com/aa87de0f7214d0fdd3a070a0ef158801d1139ba6/sys-boot/coreboot/coreboot-0.0.1-r1188.ebuild
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/fd02b700e2741f3561dab94170bcfda4255bfbe7 commit fd02b700e2741f3561dab94170bcfda4255bfbe7 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:37:27 2017 Edgar: switch Touchpad interrupt to be level-triggered The Elan touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot Edgar, verify that touchpad works Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/798510 Reviewed-by: Guenter Roeck <groeck@chromium.org> [modify] https://crrev.com/fd02b700e2741f3561dab94170bcfda4255bfbe7/src/mainboard/google/edgar/gpio.c [modify] https://crrev.com/fd02b700e2741f3561dab94170bcfda4255bfbe7/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/fd02b700e2741f3561dab94170bcfda4255bfbe7/src/mainboard/google/edgar/acpi/mainboard.asl
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/9c32a2831bdccb401ba60e987bd9055702f47991 commit 9c32a2831bdccb401ba60e987bd9055702f47991 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:37:31 2017 coreboot: celes: update BIOS version to 1.1 Now that coreboot on Celes no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:798062 BUG= chromium:704198 , chromium:734663 TEST=Boot on Celes, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/798110 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [rename] https://crrev.com/9c32a2831bdccb401ba60e987bd9055702f47991/sys-boot/coreboot/coreboot-0.0.1-r1145.ebuild [modify] https://crrev.com/9c32a2831bdccb401ba60e987bd9055702f47991/sys-boot/coreboot/files/configs/config.celes
,
Nov 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/48ebf7e8b017acbedbc722ffa14f6f02f714ce97 commit 48ebf7e8b017acbedbc722ffa14f6f02f714ce97 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Nov 30 23:37:35 2017 coreboot: cyan: update BIOS version to 1.1 Now that coreboot on Cyan no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:791992 BUG= chromium:704198 , chromium:734663 TEST=Boot on Cyan, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/792257 Reviewed-by: Guenter Roeck <groeck@chromium.org> [modify] https://crrev.com/48ebf7e8b017acbedbc722ffa14f6f02f714ce97/sys-boot/coreboot/files/configs/config.cyan [rename] https://crrev.com/48ebf7e8b017acbedbc722ffa14f6f02f714ce97/sys-boot/coreboot/coreboot-0.0.1-r1137.ebuild
,
Dec 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/941a47af49d447c7223cada97f8bce55e0e19622 commit 941a47af49d447c7223cada97f8bce55e0e19622 Author: Dmitry Torokhov <dmitry.torokhov@gmail.com> Date: Fri Dec 01 01:25:08 2017 FROMLIST: Input: elants_i2c - do not clobber interrupt trigger on x86 This is similar to commit a4b0a58bb142 ("Input: elan_i2c - do not clobber interrupt trigger on x86") On x86 we historically used falling edge interrupts in the driver because that's how first Chrome devices were configured. They also did not use ACPI to enumerate I2C devices (because back then there was no kernel support for that), so trigger was hard-coded in the driver. However the controller behavior is much more reliable if we use level triggers, and that is how we configured ARM devices, and how want to configure newer x86 devices as well. All newer x86 boxes have their I2C devices enumerated in ACPI. Let's see if platform code (ACPI, DT) described interrupt and specified particular trigger type, and if so, let's use it instead of always clobbering trigger with IRQF_TRIGGER_FALLING. We will still use this trigger type as a fallback if platform code left interrupt trigger unconfigured. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> BUG= chromium:734663 TEST=Build and boot on Cyan with updated firmware, verify touchscreen works (am from https://patchwork.kernel.org/patch/10062223/) Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Change-Id: I92643bf19ebf68823b2aca0dc664c0ddc6369194 Reviewed-on: https://chromium-review.googlesource.com/794331 Reviewed-by: Guenter Roeck <groeck@chromium.org> (cherry picked from commit bf360841c94afc306b8ebe13522dca1465b5d4ff) Reviewed-on: https://chromium-review.googlesource.com/801475 [modify] https://crrev.com/941a47af49d447c7223cada97f8bce55e0e19622/drivers/input/touchscreen/elants_i2c.c
,
Dec 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0fdca76ae621e4c67970b3511cfeb988a1350815 commit 0fdca76ae621e4c67970b3511cfeb988a1350815 Author: Dmitry Torokhov <dmitry.torokhov@gmail.com> Date: Fri Dec 01 04:30:15 2017 FROMLIST: Input: elants_i2c - do not clobber interrupt trigger on x86 This is similar to commit a4b0a58bb142 ("Input: elan_i2c - do not clobber interrupt trigger on x86") On x86 we historically used falling edge interrupts in the driver because that's how first Chrome devices were configured. They also did not use ACPI to enumerate I2C devices (because back then there was no kernel support for that), so trigger was hard-coded in the driver. However the controller behavior is much more reliable if we use level triggers, and that is how we configured ARM devices, and how want to configure newer x86 devices as well. All newer x86 boxes have their I2C devices enumerated in ACPI. Let's see if platform code (ACPI, DT) described interrupt and specified particular trigger type, and if so, let's use it instead of always clobbering trigger with IRQF_TRIGGER_FALLING. We will still use this trigger type as a fallback if platform code left interrupt trigger unconfigured. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> BUG= chromium:734663 TEST=Build and boot on Cyan with updated firmware, verify touchscreen works (am from https://patchwork.kernel.org/patch/10062223/) Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Change-Id: I92643bf19ebf68823b2aca0dc664c0ddc6369194 Reviewed-on: https://chromium-review.googlesource.com/794331 Reviewed-by: Guenter Roeck <groeck@chromium.org> (cherry picked from commit bf360841c94afc306b8ebe13522dca1465b5d4ff) Reviewed-on: https://chromium-review.googlesource.com/801474 [modify] https://crrev.com/0fdca76ae621e4c67970b3511cfeb988a1350815/drivers/input/touchscreen/elants_i2c.c
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/73f011ec2f5bfb9140c06b4dfc7d0fca1f07c9f2 commit 73f011ec2f5bfb9140c06b4dfc7d0fca1f07c9f2 Author: Dmitry Torokhov <dtor@chromium.org> Date: Fri Dec 08 01:52:32 2017 Terra: switch Touchpad interrupt to be level-triggered The Elan touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot Terra, verify that touchpad works Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/815884 Reviewed-by: Guenter Roeck <groeck@chromium.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/73f011ec2f5bfb9140c06b4dfc7d0fca1f07c9f2/src/mainboard/google/terra/acpi/mainboard.asl [modify] https://crrev.com/73f011ec2f5bfb9140c06b4dfc7d0fca1f07c9f2/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/73f011ec2f5bfb9140c06b4dfc7d0fca1f07c9f2/src/mainboard/google/terra/gpio.c
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/cfd1914b4eb6950ab414e2367e9cebf12a217331 commit cfd1914b4eb6950ab414e2367e9cebf12a217331 Author: Dmitry Torokhov <dtor@chromium.org> Date: Fri Dec 08 01:52:35 2017 coreboot: terra: update BIOS version to 1.1 Now that coreboot on Terra no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:815883 BUG= chromium:704198 , chromium:734663 TEST=Boot on Terra, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/816075 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Guenter Roeck <groeck@chromium.org> [rename] https://crrev.com/cfd1914b4eb6950ab414e2367e9cebf12a217331/sys-boot/coreboot/coreboot-0.0.1-r1189.ebuild [modify] https://crrev.com/cfd1914b4eb6950ab414e2367e9cebf12a217331/sys-boot/coreboot/files/configs/config.terra
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/50feefbf1259e46afd90f8725248627719621dfa commit 50feefbf1259e46afd90f8725248627719621dfa Author: Dmitry Torokhov <dtor@chromium.org> Date: Fri Dec 08 23:06:18 2017 Reks: do not hardcode virtual interrupt numbers Instead of hardcoding virtual interrupt numbers that may change as the kernel changes, use GpioInt() reosurces to describe keyboard and touchscreen interrupt lines. BUG= chromium:704198 , chromium:734663 TEST=Build and boot Reks, verify keyboard and touchscreen work with newer kernels (4.14). Change-Id: I98d5726f5b8094d639fb40dfca128364f63bb30b Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/817987 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/50feefbf1259e46afd90f8725248627719621dfa/src/mainboard/google/reks/acpi/mainboard.asl [modify] https://crrev.com/50feefbf1259e46afd90f8725248627719621dfa/src/mainboard/google/reks/onboard.h [modify] https://crrev.com/50feefbf1259e46afd90f8725248627719621dfa/src/mainboard/google/reks/acpi/superio.asl
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/4996b8383a5de577dc2254f3cc9ee0b0e8095017 commit 4996b8383a5de577dc2254f3cc9ee0b0e8095017 Author: Dmitry Torokhov <dtor@chromium.org> Date: Fri Dec 08 23:06:24 2017 Reks: switch Touchpad and Touchscreen interrupts to be level-triggered The Elan and Melfas touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot Reks, verify that touchpad and touchscreen work. Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/817989 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/4996b8383a5de577dc2254f3cc9ee0b0e8095017/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/4996b8383a5de577dc2254f3cc9ee0b0e8095017/src/mainboard/google/reks/gpio.c [modify] https://crrev.com/4996b8383a5de577dc2254f3cc9ee0b0e8095017/src/mainboard/google/reks/acpi/mainboard.asl
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/339b275cc613ec28b1e7b0e9b20780882fdfa370 commit 339b275cc613ec28b1e7b0e9b20780882fdfa370 Author: Dmitry Torokhov <dtor@chromium.org> Date: Fri Dec 08 23:44:03 2017 coreboot: reks: update BIOS version to 1.1 Now that coreboot on Reks no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:817988 BUG= chromium:704198 , chromium:734663 TEST=Boot on Reks, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/817990 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [rename] https://crrev.com/339b275cc613ec28b1e7b0e9b20780882fdfa370/sys-boot/coreboot/coreboot-0.0.1-r1174.ebuild [modify] https://crrev.com/339b275cc613ec28b1e7b0e9b20780882fdfa370/sys-boot/coreboot/files/configs/config.reks
,
Feb 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2 commit ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Feb 01 19:40:14 2018 Strago: do not hardcode virtual interrupt numbers Instead of hardcoding virtual interrupt numbers that may change as the kernel changes, use GpioInt() reosurces to describe keyboard and touchscreen interrupt lines. BUG= chromium:704198 , chromium:734663 TEST=Build and boot several strago boards, verify keyboard, touchpad and touchscreen work with newer kernels (4.14). Change-Id: I98d5726f5b8094d639fb40dfca128364f63bb30b Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/894687 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/intel/strago/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/umaro/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/setzer/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/banon/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/intel/strago/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/kefka/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/intel/strago/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/relm/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/wizpig/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/kefka/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/kefka/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/relm/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/umaro/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/wizpig/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/wizpig/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/setzer/acpi/mainboard.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/setzer/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/relm/onboard.h [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/umaro/acpi/superio.asl [modify] https://crrev.com/ee7a150bf3d624e39ed7ef8d6d84f8b9af5a4ca2/src/mainboard/google/banon/onboard.h
,
Feb 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/coreboot/+/126d352f0c000337c6e6356e2976bf30d63a0a10 commit 126d352f0c000337c6e6356e2976bf30d63a0a10 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Feb 01 19:40:18 2018 Strago: switch Touchpad and Touchscreen interrupts to be level-triggered The Elan and other touch controllers found in this device work much more reliably if used with level-triggered interrupts rather than edge-triggered. BUG= chromium:734663 TEST=Boot several strago boards, verify that touchpad and touchscreen work. Change-Id: I59d05d9dfa9c41e5472d756ef51f0817a503c889 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/894689 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/soc/intel/braswell/include/soc/gpio.h [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/kefka/gpio.c [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/umaro/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/kefka/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/wizpig/gpio.c [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/wizpig/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/banon/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/banon/gpio.c [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/setzer/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/relm/acpi/mainboard.asl [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/setzer/gpio.c [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/umaro/gpio.c [modify] https://crrev.com/126d352f0c000337c6e6356e2976bf30d63a0a10/src/mainboard/google/relm/gpio.c
,
Feb 1 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/ba269036af85d902ae6d557c86b945f0f8ea45f0 commit ba269036af85d902ae6d557c86b945f0f8ea45f0 Author: Dmitry Torokhov <dtor@chromium.org> Date: Thu Feb 01 19:40:20 2018 coreboot: strago: update BIOS version to 1.1 Now that coreboot on Strago boards no longer uses hardcoded interrupt numbers to describe interrupts for keyboard, touchscreen and touchpad, let's update BIOS version so Linux kernel can identify updated BIOS and not engage the workarounds. CQ-DEPEND=CL:894689 BUG= chromium:704198 , chromium:734663 TEST=Boot on various Strago boards, check dmidecode Change-Id: I87348be3d9f6a8feb685733b845e8a9b36c8af93 Signed-off-by: Dmitry Torokhov <dtor@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/894466 Reviewed-by: Aaron Durbin <adurbin@chromium.org> [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.wizpig [rename] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/coreboot-0.0.1-r1262.ebuild [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.banon [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.kefka [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.setzer [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.relm [modify] https://crrev.com/ba269036af85d902ae6d557c86b945f0f8ea45f0/sys-boot/coreboot/files/configs/config.umaro
,
Feb 2 2018
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by jayhlee@google.com
, Jun 21 2017