diff options
author | Duncan Laurie <dlaurie@chromium.org> | 2014-07-15 13:36:52 -0700 |
---|---|---|
committer | Marc Jones <marc.jones@se-eng.com> | 2015-01-19 01:54:00 +0100 |
commit | 515d3d2e2c9bd6e12eb5d137cf7e9646b9c7c453 (patch) | |
tree | 710d7d6e7f04027e3819142c5f8affc634ad1699 /src | |
parent | 00aedc5e1aa4fc17b305958635763a4ff203b4b4 (diff) | |
download | coreboot-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)
Diffstat (limited to 'src')
-rw-r--r-- | src/mainboard/google/samus/acpi/mainboard.asl | 18 | ||||
-rw-r--r-- | src/mainboard/google/samus/romstage.c | 6 |
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()); |