summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Laurie <dlaurie@chromium.org>2014-07-15 13:36:52 -0700
committerMarc Jones <marc.jones@se-eng.com>2015-01-19 01:54:00 +0100
commit515d3d2e2c9bd6e12eb5d137cf7e9646b9c7c453 (patch)
tree710d7d6e7f04027e3819142c5f8affc634ad1699
parent00aedc5e1aa4fc17b305958635763a4ff203b4b4 (diff)
downloadcoreboot-515d3d2e2c9bd6e12eb5d137cf7e9646b9c7c453.tar.xz
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 <dlaurie@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/208152 Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org> (cherry picked from commit e166f76f9bd167468c7637dcce2b9eabf7dce8f0) Signed-off-by: Marc Jones <marc.jones@se-eng.com> Change-Id: I47927d97c1586ec09310d014d8fba7d7a3d773c4 Reviewed-on: http://review.coreboot.org/8213 Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Tested-by: build bot (Jenkins)
-rw-r--r--src/mainboard/google/samus/acpi/mainboard.asl18
-rw-r--r--src/mainboard/google/samus/romstage.c6
2 files changed, 23 insertions, 1 deletions
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 <broadwell/gpio.h>
#include <broadwell/pei_data.h>
#include <broadwell/pei_wrapper.h>
+#include <broadwell/pm.h>
#include <broadwell/romstage.h>
#include <mainboard/google/samus/spd/spd.h>
#include <mainboard/google/samus/gpio.h>
@@ -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());