From 9f416261999e120ca16a7bdcc5a508aa1452de49 Mon Sep 17 00:00:00 2001 From: Aseda Aboagye Date: Thu, 16 Aug 2018 18:24:49 -0700 Subject: nocturne: Control UHALL_PWR_EN based on lid state. BUG=b:112110598 BRANCH=None TEST=Flash nocturne; verify board still boots. Check that the logic would do the right thing if the board version matched. Change-Id: I39bd7eb6f3d73dde4c42b3abfbb38d0de424dcf5 Signed-off-by: Aseda Aboagye Reviewed-on: https://chromium-review.googlesource.com/1179314 Commit-Ready: Aseda Aboagye Tested-by: Aseda Aboagye Reviewed-by: Furquan Shaikh Reviewed-by: Nicolas Boichat --- board/nocturne/board.c | 13 +++++++++++++ board/nocturne/gpio.inc | 1 - 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/board/nocturne/board.c b/board/nocturne/board.c index 7cb856de3f..021bf29d6e 100644 --- a/board/nocturne/board.c +++ b/board/nocturne/board.c @@ -405,6 +405,19 @@ static void board_init(void) } DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT); +static void board_lid_change(void) +{ + /* This is done in hardware on old revisions. */ + if (board_get_version() <= 1) + return; + + if (lid_is_open()) + gpio_set_level(GPIO_UHALL_PWR_EN, 1); + else + gpio_set_level(GPIO_UHALL_PWR_EN, 0); +} +DECLARE_HOOK(HOOK_LID_CHANGE, board_lid_change, HOOK_PRIO_DEFAULT); + static void board_pmic_disable_slp_s0_vr_decay(void) { /* diff --git a/board/nocturne/gpio.inc b/board/nocturne/gpio.inc index 54329de546..e70d0de689 100644 --- a/board/nocturne/gpio.inc +++ b/board/nocturne/gpio.inc @@ -62,7 +62,6 @@ GPIO(EC_BRD_ID1, PIN(9, 6), GPIO_INPUT) GPIO(EC_BRD_ID2, PIN(9, 3), GPIO_INPUT) GPIO(EC_BRD_ID3, PIN(F, 0), GPIO_INPUT) GPIO(EC_GPIO95, PIN(9, 5), GPIO_OUT_LOW) -/* TODO(b/78640157): Determine what to do with this pin. */ GPIO(UHALL_PWR_EN, PIN(E, 0), GPIO_OUT_LOW) GPIO(USB2_VBUSSENSE, PIN(A, 2), GPIO_OUT_LOW) GPIO(USB2_ID, PIN(A, 0), GPIO_OUT_LOW) -- cgit v1.2.1