summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJett Rink <jettrink@chromium.org>2018-03-23 13:38:19 -0600
committerchrome-bot <chrome-bot@chromium.org>2018-03-26 14:41:20 -0700
commitcd17195b0f9aa72b515df0d138fa68b9cb0d713a (patch)
tree4b2026d53aa8f652cdda16806339040097368e9c
parentd5a2d1fdf415433a784c51e5bfe6686d50e234c8 (diff)
downloadchrome-ec-cd17195b0f9aa72b515df0d138fa68b9cb0d713a.tar.gz
bip: add UART interrupt to exit deep doze mode
Hook up UART RX pin to wake up ITE device when in deep doze mode. BRANCH=none BUG=b:76022415 TEST=none Change-Id: Iabfd3ef51f9e63a6cbcca60fb916108528b0b294 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/978932 Reviewed-by: Furquan Shaikh <furquan@chromium.org>
-rw-r--r--board/bip/board.c1
-rw-r--r--board/bip/gpio.inc7
2 files changed, 5 insertions, 3 deletions
diff --git a/board/bip/board.c b/board/bip/board.c
index 80d4309e42..38f8d60192 100644
--- a/board/bip/board.c
+++ b/board/bip/board.c
@@ -11,6 +11,7 @@
#include "lid_switch.h"
#include "power_button.h"
#include "spi.h"
+#include "uart.h"
#include "switch.h"
#include "system.h"
#include "util.h"
diff --git a/board/bip/gpio.inc b/board/bip/gpio.inc
index b364b64905..e4e27fa2ee 100644
--- a/board/bip/gpio.inc
+++ b/board/bip/gpio.inc
@@ -12,6 +12,10 @@
GPIO_INT(LID_OPEN, PIN(E, 2), GPIO_INT_BOTH, lid_interrupt)
GPIO_INT(WP_L, PIN(I, 4), GPIO_INT_BOTH, switch_interrupt) /* EC_WP_ODL */
GPIO_INT(POWER_BUTTON_L, PIN(E, 4), GPIO_INT_BOTH, power_button_interrupt) /* MECH_PWR_BTN_ODL */
+#ifdef CONFIG_LOW_POWER_IDLE
+/* Used to wake up the EC from Doze mode when writing to console */
+GPIO_INT(UART1_RX, PIN(B, 0), GPIO_INT_FALLING, uart_deepsleep_interrupt) /* UART_SERVO_TX_EC_RX */
+#endif
/*
* TODO(b/76023457): Move below 4 signals to virtual wires over eSPI
@@ -67,6 +71,3 @@ ALTERNATE(PIN_MASK(A, 0x30), 0, MODULE_I2C, 0) /* I2C5 */
ALTERNATE(PIN_MASK(I, 0x03), 0, MODULE_ADC, 0) /* ADC0 & ADC1: BRD_ID1 & BRD_ID2 */
ALTERNATE(PIN_MASK(L, 0x03), 0, MODULE_ADC, 0) /* ADC13 & ADC14: ADC_USB_C0_VBUS & ADC_USB_C1_VBUS */
ALTERNATE(PIN_MASK(A, 0x48), 0, MODULE_PWM, 0) /* LED_1_L & LED_2_L */
-
-/* TODO(b/76022415): Determine if low power mode really needs interrupt here */
-UNIMPLEMENTED(UART1_RX)