[coreboot-gerrit] Change in coreboot[master]: mainboard/google/eve: Set touchpad IRQ to level triggered

Duncan Laurie (Code Review) gerrit at coreboot.org
Thu Apr 20 16:55:32 CEST 2017


Duncan Laurie has submitted this change and it was merged. ( https://review.coreboot.org/19382 )

Change subject: mainboard/google/eve: Set touchpad IRQ to level triggered
......................................................................


mainboard/google/eve: Set touchpad IRQ to level triggered

This commit changes the interrupt configuration for the touchpad to be
level triggered so it matches what the device is actually using.

When the system wakes from suspend by way of touchpad interrupt, or
there is touchpad input while in suspend that does not wake the device
(when the device is in tablet mode) the interrupt edge is not seen by
the AP so the driver does not handle the event and the touchpad keeps
the interrupt asserted and does not send further interrupts.  The end
result is a non-functional touchpad after resume until it is reset or
the driver is reloaded.

This happens because the touchpad is actually treating the interrupt as
level triggered and expects the kernel driver to read a data packet over
I2C before it will de-assert the pending interrupt.

BUG=b:35774857
BRANCH=none
TEST=Test that the system can reliably wake from suspend by touchpad
event via the EC and continue to have a functional touchpad after resume.

Change-Id: Iaf7c04d9bc9d945bdcc196dff54c92a2a68368f3
Signed-off-by: Duncan Laurie <dlaurie at chromium.org>
Reviewed-on: https://review.coreboot.org/19382
Tested-by: build bot (Jenkins)
Reviewed-by: Furquan Shaikh <furquan at google.com>
Reviewed-by: Aaron Durbin <adurbin at chromium.org>
---
M src/mainboard/google/eve/devicetree.cb
1 file changed, 1 insertion(+), 1 deletion(-)

Approvals:
  Aaron Durbin: Looks good to me, approved
  build bot (Jenkins): Verified
  Furquan Shaikh: Looks good to me, approved



diff --git a/src/mainboard/google/eve/devicetree.cb b/src/mainboard/google/eve/devicetree.cb
index 3de759c..275ee8a 100644
--- a/src/mainboard/google/eve/devicetree.cb
+++ b/src/mainboard/google/eve/devicetree.cb
@@ -244,7 +244,7 @@
 			chip drivers/i2c/generic
 				register "hid" = ""GOOG5400""
 				register "desc" = ""Touchpad""
-				register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_B3_IRQ)"
+				register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
 				device i2c 49 on end
 			end
 		end # I2C #2

-- 
To view, visit https://review.coreboot.org/19382
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Iaf7c04d9bc9d945bdcc196dff54c92a2a68368f3
Gerrit-PatchSet: 2
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Owner: Duncan Laurie <dlaurie at chromium.org>
Gerrit-Reviewer: Aaron Durbin <adurbin at chromium.org>
Gerrit-Reviewer: Duncan Laurie <dlaurie at chromium.org>
Gerrit-Reviewer: Furquan Shaikh <furquan at google.com>
Gerrit-Reviewer: build bot (Jenkins)



More information about the coreboot-gerrit mailing list