diff options
author | Duncan Laurie <dlaurie@chromium.org> | 2017-01-21 15:42:26 -0800 |
---|---|---|
committer | Duncan Laurie <dlaurie@chromium.org> | 2017-01-22 19:24:22 +0100 |
commit | 367c9b328fd084509f8ed41ecf3c64ebc2e02e17 (patch) | |
tree | 2c94f9d934e2b559c6493b079071bfca6d812f02 /src/mainboard/google | |
parent | ba32f0f91cfd79434b53d60a16d4c072fac384ec (diff) | |
download | coreboot-367c9b328fd084509f8ed41ecf3c64ebc2e02e17.tar.xz |
google/eve: Enable keyboard backlight in bootblock
Enable the keyboard backlight as early in boot as possible to
provide a indication that the BIOS is executing.
Since this is bootblock it can't use the convenience function
for checking for S3 resume so just read the PM1 value from the
SOC and check it directly.
Use a value of 75% for the current system as that is visible
without being full brightness.
BUG=chrome-os-partner:61464
TEST=boot on eve and check that keyboard backlight is enabled
as soon as the SOC starts booting
Change-Id: I9ac78e9c3913a2776943088f35142afe3ffef056
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: https://review.coreboot.org/18197
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Diffstat (limited to 'src/mainboard/google')
-rw-r--r-- | src/mainboard/google/eve/bootblock.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mainboard/google/eve/bootblock.c b/src/mainboard/google/eve/bootblock.c index 2c524f443a..baca9c895c 100644 --- a/src/mainboard/google/eve/bootblock.c +++ b/src/mainboard/google/eve/bootblock.c @@ -14,9 +14,13 @@ * GNU General Public License for more details. */ +#include <arch/io.h> #include <bootblock_common.h> +#include <ec/google/chromeec/ec.h> #include <gpio.h> #include <soc/gpio.h> +#include <soc/iomap.h> +#include <soc/pm.h> #include "gpio.h" static void early_config_gpio(void) @@ -26,5 +30,12 @@ static void early_config_gpio(void) void bootblock_mainboard_init(void) { + uint32_t pm1_cnt = inl(ACPI_BASE_ADDRESS + PM1_CNT); + uint32_t pm1_sts = inl(ACPI_BASE_ADDRESS + PM1_STS); + + /* Turn on keyboard backlight to indicate we are booting */ + if ((pm1_sts & WAK_STS) && (acpi_sleep_from_pm1(pm1_cnt) != ACPI_S3)) + google_chromeec_kbbacklight(75); + early_config_gpio(); } |