diff options
author | Shawn Nematbakhsh <shawnn@chromium.org> | 2013-11-08 17:23:26 -0800 |
---|---|---|
committer | Kyösti Mälkki <kyosti.malkki@gmail.com> | 2014-05-07 12:03:54 +0200 |
commit | 9547f8d799829ddab9196c4e0cad644a06db49e9 (patch) | |
tree | e5a5ffdbd35693cc920498055b738fc1ead6f30f /src/mainboard/google/rambi/gpio.c | |
parent | 99ac98f7e1fa30d3fb33cc5486e6af46b4bef56e (diff) |
rambi: Add DIRQs for trackpad and touchscreen
Also add the relevant info about these pins to the ASL tables + add
SMBIOS type 41 data for these parts.
BUG=chrome-os-partner:22863
TEST=Manual on Rambi. Set some pins to GPIO_DIRQ, and then verify DIRQ
regwrites w/ GPIO_DEBUG look correct.
Change-Id: Id40655f9fb2ea7b10e1ff58d0b2a8b4cc6f05ff8
Reviewed-on: https://chromium-review.googlesource.com/176299
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Commit-Queue: Shawn Nematbakhsh <shawnn@chromium.org>
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Tested-by: Shawn Nematbakhsh <shawnn@chromium.org>
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: http://review.coreboot.org/4963
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Diffstat (limited to 'src/mainboard/google/rambi/gpio.c')
-rw-r--r-- | src/mainboard/google/rambi/gpio.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/mainboard/google/rambi/gpio.c b/src/mainboard/google/rambi/gpio.c index 9bcafad8be..7d44968648 100644 --- a/src/mainboard/google/rambi/gpio.c +++ b/src/mainboard/google/rambi/gpio.c @@ -19,6 +19,7 @@ #include <stdlib.h> #include <baytrail/gpio.h> +#include "irqroute.h" /* TODO(SHAWNN): Modify gpios labeled 'INT' for interrupt handling */ /* NCORE GPIOs */ @@ -110,7 +111,7 @@ static const struct soc_gpio_map gpscore_gpio_map[] = { GPIO_NC, /* S0-SC052 - SMB_SOC_CLK (XDP) */ GPIO_NC, /* S0-SC053 - SMB_SOC_ALERTB (NC) */ GPIO_DEFAULT, /* S0-SC054 - NC */ - GPIO_INPUT, /* S0-SC055 - TRACKPAD_INT_DX - INT */ + GPIO_DIRQ, /* S0-SC055 - TRACKPAD_INT_DX */ GPIO_INPUT, /* S0-SC056 - GPIO_S0_SC_56 - STRAP */ GPIO_FUNC1, /* S0-SC057 - PCH_UART_TXD */ GPIO_INPUT, /* S0-SC058 - SIM_DET_C */ @@ -127,7 +128,7 @@ static const struct soc_gpio_map gpscore_gpio_map[] = { GPIO_FUNC1, /* S0-SC069 - SIO_SPI_CLK */ GPIO_INPUT, /* S0-SC070 - ALS_INT_L - INT */ GPIO_NC, /* S0-SC071 - NC */ - GPIO_INPUT, /* S0-SC072 - TOUCH_INT_L_DX - INT */ + GPIO_DIRQ, /* S0-SC072 - TOUCH_INT_L_DX */ GPIO_NC, /* S0-SC073 - NC */ GPIO_NC, /* S0-SC074 - SIO_UART2_RXD (NC) */ GPIO_NC, /* S0-SC075 - SIO_UART2_TXD (NC) */ @@ -209,10 +210,20 @@ static const struct soc_gpio_map gpssus_gpio_map[] = { GPIO_END }; +static const u8 core_dedicated_irq[GPIO_MAX_DIRQS] = { + [TPAD_IRQ_OFFSET] = TPAD_IRQ_GPIO, + [TOUCH_IRQ_OFFSET] = TOUCH_IRQ_GPIO, +}; + +static const u8 sus_dedicated_irq[GPIO_MAX_DIRQS] = { +}; + static struct soc_gpio_config gpio_config = { .ncore = gpncore_gpio_map, .score = gpscore_gpio_map, - .ssus = gpssus_gpio_map + .ssus = gpssus_gpio_map, + .core_dirq = &core_dedicated_irq, + .sus_dirq = &sus_dedicated_irq, }; struct soc_gpio_config* mainboard_get_gpios(void) |