diff options
author | Jagadish Krishnamoorthy <jagadish.krishnamoorthy@intel.com> | 2016-03-23 18:49:42 -0700 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2017-08-25 18:58:29 +0000 |
commit | 77c13f03f5291958b933059eeeb99f9c0660552a (patch) | |
tree | f5bdce7d2551738caa06c4eaef1b5b1d704ce43e | |
parent | 448e5a2810aa735e0a062296b79db8efce559631 (diff) |
google/cyan: Fix Touchscreen Interrupt
Cherry-pick from Chromium commit 1138727.
Elan touchscreen driver expects the first gpio resource in asl
to be the reset line.
The driver considers the gpio based irq line as reset gpio resource
and changes the direction to output.
This will cause irq registration to fail.
Solution is to pass Interrupt resource for touchscreen irq
instead of GpioInt.
Original-Change-Id: Ia72d4ad80117f3c0014098113c9027416026e65e
Original-Signed-off-by: Jagadish Krishnamoorthy <jagadish.krishnamoorthy@intel.com>
Original-Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Change-Id: I1c4b029851e321feeedf713186976fbec42dd82e
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/21122
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
-rw-r--r-- | src/mainboard/google/cyan/acpi/mainboard.asl | 12 | ||||
-rw-r--r-- | src/mainboard/google/cyan/onboard.h | 2 |
2 files changed, 10 insertions, 4 deletions
diff --git a/src/mainboard/google/cyan/acpi/mainboard.asl b/src/mainboard/google/cyan/acpi/mainboard.asl index 31b9090809..9d68065f4c 100644 --- a/src/mainboard/google/cyan/acpi/mainboard.asl +++ b/src/mainboard/google/cyan/acpi/mainboard.asl @@ -46,8 +46,10 @@ Scope (\_SB.PCI0.I2C1) AddressingMode7Bit, /* AddressingMode */ "\\_SB.PCI0.I2C1", /* ResourceSource */ ) - GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone,, - "\\_SB.GPSW") { BOARD_TOUCH_GPIO_INDEX } + Interrupt (ResourceConsumer, Edge, ActiveLow) + { + BOARD_PRE_EVT_TOUCH_IRQ + } } ) Name(BUF1,ResourceTemplate () @@ -59,8 +61,10 @@ Scope (\_SB.PCI0.I2C1) AddressingMode7Bit, /* AddressingMode */ "\\_SB.PCI0.I2C1", /* ResourceSource */ ) - GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone,, - "\\_SB.GPNC") { BOARD_EVT_TOUCH_GPIO_INDEX } + Interrupt (ResourceConsumer, Edge, ActiveLow) + { + BOARD_TOUCH_IRQ + } } ) If (LEqual (\BDID, BOARD_EVT)) { diff --git a/src/mainboard/google/cyan/onboard.h b/src/mainboard/google/cyan/onboard.h index f03f1df1bd..1347d41a07 100644 --- a/src/mainboard/google/cyan/onboard.h +++ b/src/mainboard/google/cyan/onboard.h @@ -36,6 +36,8 @@ */ /* ToDO: change kbd irq to gpio bank index */ #define BOARD_I8042_IRQ 182 +#define BOARD_TOUCH_IRQ 184 +#define BOARD_PRE_EVT_TOUCH_IRQ 156 /* SCI: Gpio index in N bank */ |