diff options
author | Matt DeVillier <matt.devillier@gmail.com> | 2018-07-31 16:32:25 -0500 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2018-08-02 10:52:19 +0000 |
commit | 6444d7df0b3f17af9917371647e079c93bb1b415 (patch) | |
tree | 64fcea764c7eb66d8886b406200f396684154bde | |
parent | ed219ae3068f1eb6dc5674d4c1d91a45a1d58d2c (diff) | |
download | coreboot-6444d7df0b3f17af9917371647e079c93bb1b415.tar.xz |
google/cyan: do not hardcode virtual interrupt numbers
Adapted from chromium commit ee7a150
[Strago: 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,
touchpad, and touchscreen interrupt lines.
TEST=Build and boot several cyan variant boards, verify keyboard,
touchpad and touchscreen work with newer kernels (4.14+).
Original-Change-Id: I98d5726f5b8094d639fb40dfca128364f63bb30b
Original-Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/894687
Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Change-Id: Iecfb45be433249d274532eb746588483fedb3f52
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/27758
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
11 files changed, 20 insertions, 30 deletions
diff --git a/src/mainboard/google/cyan/acpi/touchscreen_elan.asl b/src/mainboard/google/cyan/acpi/touchscreen_elan.asl index 7100120585..7e3c7ae5f4 100644 --- a/src/mainboard/google/cyan/acpi/touchscreen_elan.asl +++ b/src/mainboard/google/cyan/acpi/touchscreen_elan.asl @@ -35,10 +35,8 @@ Scope (\_SB.PCI0.I2C1) AddressingMode7Bit, /* AddressingMode */ "\\_SB.PCI0.I2C1", /* ResourceSource */ ) - Interrupt (ResourceConsumer, Level, ActiveLow) - { - BOARD_TOUCH_IRQ - } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone,, + "\\_SB.GPNC") { BOARD_TOUCH_GPIO_INDEX } } ) Return (BUF0) diff --git a/src/mainboard/google/cyan/acpi/touchscreen_melfas.asl b/src/mainboard/google/cyan/acpi/touchscreen_melfas.asl index 8d36649f51..f54f8867d1 100644 --- a/src/mainboard/google/cyan/acpi/touchscreen_melfas.asl +++ b/src/mainboard/google/cyan/acpi/touchscreen_melfas.asl @@ -35,10 +35,8 @@ Scope (\_SB.PCI0.I2C1) AddressingMode7Bit, /* AddressingMode */ "\\_SB.I2C1", /* ResourceSource */ ) - Interrupt (ResourceConsumer, Level, ActiveLow) - { - BOARD_TOUCH_IRQ - } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone,, + "\\_SB.GPNC") { BOARD_TOUCH_GPIO_INDEX } }) Return (BUF0) } diff --git a/src/mainboard/google/cyan/acpi/touchscreen_synaptics.asl b/src/mainboard/google/cyan/acpi/touchscreen_synaptics.asl index 024e6f1f6b..f0db3a310b 100644 --- a/src/mainboard/google/cyan/acpi/touchscreen_synaptics.asl +++ b/src/mainboard/google/cyan/acpi/touchscreen_synaptics.asl @@ -78,10 +78,8 @@ Scope (\_SB.PCI0.I2C1) AddressingMode7Bit, /* AddressingMode */ "\\_SB.PCI0.I2C1", /* ResourceSource */ ) - Interrupt (ResourceConsumer, Edge, ActiveLow) - { - BOARD_TOUCH_IRQ - } + GpioInt (Level, ActiveLow, ExclusiveAndWake, PullNone,, + "\\_SB.GPNC") { BOARD_TOUCH_GPIO_INDEX } }) Return (BUF0) } diff --git a/src/mainboard/google/cyan/acpi/trackpad_atmel.asl b/src/mainboard/google/cyan/acpi/trackpad_atmel.asl index da2cf7a517..96ec3db571 100644 --- a/src/mainboard/google/cyan/acpi/trackpad_atmel.asl +++ b/src/mainboard/google/cyan/acpi/trackpad_atmel.asl @@ -33,10 +33,8 @@ Scope (\_SB.PCI0.I2C6) AddressingMode7Bit, // AddressingMode "\\_SB.PCI0.I2C6", // ResourceSource ) - Interrupt (ResourceConsumer, Edge, ActiveLow) - { - 183 - } + GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone,, + "\\_SB.GPNC") { BOARD_TRACKPAD_GPIO_INDEX } }) Method (_STA) diff --git a/src/mainboard/google/cyan/variants/cyan/include/variant/onboard.h b/src/mainboard/google/cyan/variants/cyan/include/variant/onboard.h index 883f9b98b9..9d8cd25a0e 100644 --- a/src/mainboard/google/cyan/variants/cyan/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/cyan/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* KBD: Gpio index in N bank */ #define BOARD_I8042_GPIO_INDEX 17 /* SCI: Gpio index in N bank */ diff --git a/src/mainboard/google/cyan/variants/kefka/include/variant/onboard.h b/src/mainboard/google/cyan/variants/kefka/include/variant/onboard.h index 4a79806ecf..9b77c243dd 100644 --- a/src/mainboard/google/cyan/variants/kefka/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/kefka/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* KBD: Gpio index in N bank */ #define BOARD_I8042_GPIO_INDEX 17 /* Audio: Gpio index in SW bank */ @@ -40,6 +38,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) diff --git a/src/mainboard/google/cyan/variants/reks/include/variant/onboard.h b/src/mainboard/google/cyan/variants/reks/include/variant/onboard.h index 19c3bc36ad..ec4fa62496 100644 --- a/src/mainboard/google/cyan/variants/reks/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/reks/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* DPTF */ #define DPTF_CPU_PASSIVE 80 #define DPTF_CPU_CRITICAL 90 @@ -44,6 +42,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) diff --git a/src/mainboard/google/cyan/variants/relm/include/variant/onboard.h b/src/mainboard/google/cyan/variants/relm/include/variant/onboard.h index 2854ee9eed..e809f536d8 100644 --- a/src/mainboard/google/cyan/variants/relm/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/relm/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* KBD: Gpio index in N bank */ #define BOARD_I8042_GPIO_INDEX 17 /* Audio: Gpio index in SW bank */ @@ -40,6 +38,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) diff --git a/src/mainboard/google/cyan/variants/setzer/include/variant/onboard.h b/src/mainboard/google/cyan/variants/setzer/include/variant/onboard.h index 948d9b90ca..3ebdc5afe5 100644 --- a/src/mainboard/google/cyan/variants/setzer/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/setzer/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* KBD: Gpio index in N bank */ #define BOARD_I8042_GPIO_INDEX 17 /* Audio: Gpio index in SW bank */ @@ -40,6 +38,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) diff --git a/src/mainboard/google/cyan/variants/ultima/include/variant/onboard.h b/src/mainboard/google/cyan/variants/ultima/include/variant/onboard.h index e5b503f4fc..027c55ec82 100644 --- a/src/mainboard/google/cyan/variants/ultima/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/ultima/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* DPTF */ #define DPTF_CPU_PASSIVE 80 #define DPTF_CPU_CRITICAL 90 @@ -44,6 +42,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) diff --git a/src/mainboard/google/cyan/variants/wizpig/include/variant/onboard.h b/src/mainboard/google/cyan/variants/wizpig/include/variant/onboard.h index 5a610e2711..5db44ecbbe 100644 --- a/src/mainboard/google/cyan/variants/wizpig/include/variant/onboard.h +++ b/src/mainboard/google/cyan/variants/wizpig/include/variant/onboard.h @@ -30,8 +30,6 @@ * GPSE_SIZE = 86 */ -#define BOARD_TOUCH_IRQ 184 - /* KBD: Gpio index in N bank */ #define BOARD_I8042_GPIO_INDEX 17 /* Audio: Gpio index in SW bank */ @@ -40,6 +38,8 @@ #define BOARD_SCI_GPIO_INDEX 15 /* Trackpad: Gpio index in N bank */ #define BOARD_TRACKPAD_GPIO_INDEX 18 +/* Touch: Gpio index in N bank */ +#define BOARD_TOUCH_GPIO_INDEX 19 #define BOARD_TRACKPAD_NAME "trackpad" #define BOARD_TRACKPAD_WAKE_GPIO ACPI_ENABLE_WAKE_SUS_GPIO(1) |