From 884500ad511bb42bc01e9ae2a3f19f2266bedb42 Mon Sep 17 00:00:00 2001 From: Aseda Aboagye Date: Mon, 21 May 2018 14:26:17 -0700 Subject: [PATCH] nocturne: Add NVMe power enable controls. The EC needs to enable/disable the NVMe power rails on bootup and shutdown. This commit just adds these controls in during chipset startup and shutdown. BUG=b:73258414 BRANCH=poppy TEST=Flash nocturne, verify that rails come up on boot up and are turned off on shutdown. Change-Id: I3dc8c17255294c0bbf8638ea3ee3fcfaa321929b Signed-off-by: Aseda Aboagye Reviewed-on: https://chromium-review.googlesource.com/1067947 Commit-Ready: Aseda Aboagye Tested-by: Aseda Aboagye Reviewed-by: Furquan Shaikh Reviewed-by: Gwendal Grignou --- board/nocturne/board.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/board/nocturne/board.c b/board/nocturne/board.c index f4fe1efae6..5c3c7a7a7a 100644 --- a/board/nocturne/board.c +++ b/board/nocturne/board.c @@ -295,12 +295,20 @@ struct usb_mux usb_muxes[CONFIG_USB_PD_PORT_COUNT] = { void board_chipset_startup(void) { gpio_set_level(GPIO_EN_5V, 1); + gpio_set_level(GPIO_PP3300_NVME_EN, 1); + msleep(2); + gpio_set_level(GPIO_PP1800_NVME_EN, 1); + gpio_set_level(GPIO_PPVAR_NVME_CORE_EN, 1); } DECLARE_HOOK(HOOK_CHIPSET_STARTUP, board_chipset_startup, HOOK_PRIO_DEFAULT); void board_chipset_shutdown(void) { gpio_set_level(GPIO_EN_5V, 0); + gpio_set_level(GPIO_PPVAR_NVME_CORE_EN, 0); + gpio_set_level(GPIO_PP1800_NVME_EN, 0); + msleep(2); + gpio_set_level(GPIO_PP3300_NVME_EN, 0); } DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, board_chipset_shutdown, HOOK_PRIO_DEFAULT);