From 8a6e635419f647ea3816788444c6718ff0e4d846 Mon Sep 17 00:00:00 2001 From: Vadim Bendebury Date: Tue, 10 Mar 2015 13:03:58 -0700 Subject: [PATCH] google/storm: use whirlwind LED ring on SP5 boards The latest whirlwind requirements call for the need to indicate different device states while it is still in coreboot (it could be waiting for recovery or for factory reset trigger). Initialize the LED ring when running on the SP5 hardware (which is the first proper Whirlwind device). BRANCH=storm BUG=chrome-os-partner:36059 TEST=when the device starts the LED ring gets shut down Change-Id: I9dd0bca4849a2a8500322c84c7351aeef00d862e Signed-off-by: Patrick Georgi Original-Commit-Id: 24e4da56d4c43d03f235d0cfd5995ef235e6a2c5 Original-Change-Id: Ica37301aa27f35897d2bf467ae319fb5e68adc1d Original-Signed-off-by: Vadim Bendebury Original-Reviewed-on: https://chromium-review.googlesource.com/258271 Original-Reviewed-by: David Hendricks Reviewed-on: http://review.coreboot.org/9859 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/mainboard/google/storm/Kconfig | 1 + src/mainboard/google/storm/Makefile.inc | 1 + src/mainboard/google/storm/chromeos.c | 10 ++++++++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/mainboard/google/storm/Kconfig b/src/mainboard/google/storm/Kconfig index 1bac49d9b2..1cc83785ff 100644 --- a/src/mainboard/google/storm/Kconfig +++ b/src/mainboard/google/storm/Kconfig @@ -25,6 +25,7 @@ config BOARD_SPECIFIC_OPTIONS select BOARD_ID_AUTO select BOARD_ROMSIZE_KB_8192 select COMMON_CBFS_SPI_WRAPPER + select DRIVERS_I2C_WW_RING select HAVE_HARD_RESET select MAINBOARD_HAS_BOOTBLOCK_INIT select MAINBOARD_HAS_CHROMEOS diff --git a/src/mainboard/google/storm/Makefile.inc b/src/mainboard/google/storm/Makefile.inc index c0a523a8ae..5e03eebe49 100644 --- a/src/mainboard/google/storm/Makefile.inc +++ b/src/mainboard/google/storm/Makefile.inc @@ -22,6 +22,7 @@ bootblock-y += cdp.c bootblock-y += mmu.c bootblock-y += reset.c +verstage-y += boardid.c verstage-y += cdp.c verstage-y += chromeos.c verstage-y += gsbi.c diff --git a/src/mainboard/google/storm/chromeos.c b/src/mainboard/google/storm/chromeos.c index be949a515e..4a01fa8820 100644 --- a/src/mainboard/google/storm/chromeos.c +++ b/src/mainboard/google/storm/chromeos.c @@ -17,10 +17,14 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include #include #include #include +#include #include +#include +#include #include #include #include @@ -86,9 +90,11 @@ int get_recovery_mode_switch(void) break; } while (!stopwatch_expired(&sw)); - if (sampled_value) + if (sampled_value) { printk(BIOS_INFO, "recovery mode requested\n"); - + if (board_id() == BOARD_ID_WHIRLWIND_SP5) + ww_ring_display_pattern(GSBI_ID_7, 0); + } return sampled_value; }