summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMono <mono@posteo.de>2015-06-07 13:21:59 +0200
committerStefan Reinauer <stefan.reinauer@coreboot.org>2015-06-07 19:48:14 +0200
commit62805e60c093eab78edfe2a544e1580691b9887c (patch)
tree37e0d4de27c4c7ef6f6f3250839f3d670e051800 /src
parented271d3ca382d6eb32478c8ddf4d4edbb06052cf (diff)
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 <mono-for-coreboot@donderklumpen.de> Reviewed-on: http://review.coreboot.org/10454 Tested-by: build bot (Jenkins) Reviewed-by: Nicolas Reinecke <nr@das-labor.org>
Diffstat (limited to 'src')
-rw-r--r--src/mainboard/apple/macbook21/Kconfig1
-rw-r--r--src/mainboard/apple/macbook21/mainboard.c7
2 files changed, 8 insertions, 0 deletions
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 <arch/x86/include/arch/acpigen.h>
#include <smbios.h>
#include <drivers/intel/gma/int15.h>
+#include <ec/acpi/ec.h>
#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,
};