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>
This commit is contained in:
Jagadish Krishnamoorthy 2016-03-23 18:49:42 -07:00 committed by Martin Roth
parent 448e5a2810
commit 77c13f03f5
2 changed files with 10 additions and 4 deletions

View File

@ -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)) {

View File

@ -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 */