From 515d3d2e2c9bd6e12eb5d137cf7e9646b9c7c453 Mon Sep 17 00:00:00 2001 From: Duncan Laurie Date: Tue, 15 Jul 2014 13:36:52 -0700 Subject: samus: Enable keyboard backlight - Turn on keyboard backlight early in boot (not resume) path as a sign of life for the system - Add ACPI device for keyboard backlight so the kernel can find and make use of it BUG=chrome-os-partner:30586 BRANCH=None TEST=build and boot on samus Original-Change-Id: Iecaef0ec5c814774e19d7c4a14cb92dc236cfee3 Original-Signed-off-by: Duncan Laurie Original-Reviewed-on: https://chromium-review.googlesource.com/208152 Original-Reviewed-by: Aaron Durbin (cherry picked from commit e166f76f9bd167468c7637dcce2b9eabf7dce8f0) Signed-off-by: Marc Jones Change-Id: I47927d97c1586ec09310d014d8fba7d7a3d773c4 Reviewed-on: http://review.coreboot.org/8213 Reviewed-by: Stefan Reinauer Reviewed-by: Paul Menzel Tested-by: build bot (Jenkins) --- src/mainboard/google/samus/acpi/mainboard.asl | 18 ++++++++++++++++++ src/mainboard/google/samus/romstage.c | 6 +++++- 2 files changed, 23 insertions(+), 1 deletion(-) (limited to 'src/mainboard/google') diff --git a/src/mainboard/google/samus/acpi/mainboard.asl b/src/mainboard/google/samus/acpi/mainboard.asl index 624aa3822b..3aea40c63f 100644 --- a/src/mainboard/google/samus/acpi/mainboard.asl +++ b/src/mainboard/google/samus/acpi/mainboard.asl @@ -50,6 +50,24 @@ Scope (\_SB) Name (_UID, 2) Name (_PRW, Package() { 14, 0x3 }) // GPIO14 } + + // Keyboard Backlight interface via EC + Device (KBLT) { + Name (_HID, "GOOG0002") + Name (_UID, 1) + + // Read current backlight value + Method (KBQC, 0) + { + Return (\_SB.PCI0.LPCB.EC0.KBLV) + } + + // Write new backlight value + Method (KBCM, 1) + { + Store (Arg0, \_SB.PCI0.LPCB.EC0.KBLV) + } + } } Scope (\_SB.PCI0.I2C0) diff --git a/src/mainboard/google/samus/romstage.c b/src/mainboard/google/samus/romstage.c index c9e13e1dfb..d6528592e4 100644 --- a/src/mainboard/google/samus/romstage.c +++ b/src/mainboard/google/samus/romstage.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include @@ -33,7 +34,10 @@ void mainboard_romstage_entry(struct romstage_params *rp) { struct pei_data pei_data; - post_code(0x32); + post_code(0x31); + + if (rp->power_state->prev_sleep_state != SLEEP_STATE_S3) + google_chromeec_kbbacklight(100); printk(BIOS_INFO, "MLB: board version %d\n", google_chromeec_get_board_version()); -- cgit v1.2.3