From 62805e60c093eab78edfe2a544e1580691b9887c Mon Sep 17 00:00:00 2001 From: Mono Date: Sun, 7 Jun 2015 13:21:59 +0200 Subject: macbook21: switch off led before jumping to payload Mimic vendor BIOS in switching off the led once coreboot has booted successfully. Currently the led behavior is inconsistent. The led turns on during poweron and stays on forever. When entering S3 and during S3 it blinks and turns off after wake from S3. The behavior associated with S3 is the same under vendor BIOS and under coreboot. Switching off the led before jumping to the payload makes the led behavior consistent within coreboot before S3 and after wake from S3 and it makes the led behavior consistent to vendor BIOS. Change-Id: I0dec10b842b83dfc8054cd56d2750b724c4e8576 Signed-off-by: Axel Holewa Reviewed-on: http://review.coreboot.org/10454 Tested-by: build bot (Jenkins) Reviewed-by: Nicolas Reinecke --- src/mainboard/apple/macbook21/Kconfig | 1 + src/mainboard/apple/macbook21/mainboard.c | 7 +++++++ 2 files changed, 8 insertions(+) (limited to 'src/mainboard') diff --git a/src/mainboard/apple/macbook21/Kconfig b/src/mainboard/apple/macbook21/Kconfig index 138ec87ebb..7ad3f93a19 100644 --- a/src/mainboard/apple/macbook21/Kconfig +++ b/src/mainboard/apple/macbook21/Kconfig @@ -8,6 +8,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy select NORTHBRIDGE_INTEL_I945 select NORTHBRIDGE_INTEL_SUBTYPE_I945GM select SOUTHBRIDGE_INTEL_I82801GX + select EC_ACPI select HAVE_OPTION_TABLE select HAVE_CMOS_DEFAULT select HAVE_MP_TABLE diff --git a/src/mainboard/apple/macbook21/mainboard.c b/src/mainboard/apple/macbook21/mainboard.c index 8414d112de..ef914ec5ca 100644 --- a/src/mainboard/apple/macbook21/mainboard.c +++ b/src/mainboard/apple/macbook21/mainboard.c @@ -33,6 +33,7 @@ #include #include #include +#include #define PANEL INT15_5F35_CL_DISPLAY_DEFAULT static acpi_cstate_t cst_entries[] = { @@ -84,7 +85,13 @@ static void mainboard_enable(device_t dev) dev->ops->init = mainboard_init; } +static void mainboard_final(void *chip_info) +{ + ec_set_bit(0x10, 2); /* switch off led */ +} + struct chip_operations mainboard_ops = { .enable_dev = mainboard_enable, + .final = mainboard_final, }; -- cgit v1.2.3