aboutsummaryrefslogtreecommitdiff
path: root/src/ec/google/chromeec/acpi/keyboard_backlight.asl
diff options
context:
space:
mode:
Diffstat (limited to 'src/ec/google/chromeec/acpi/keyboard_backlight.asl')
-rw-r--r--src/ec/google/chromeec/acpi/keyboard_backlight.asl14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ec/google/chromeec/acpi/keyboard_backlight.asl b/src/ec/google/chromeec/acpi/keyboard_backlight.asl
index 75a8df3cca..d76bed87ea 100644
--- a/src/ec/google/chromeec/acpi/keyboard_backlight.asl
+++ b/src/ec/google/chromeec/acpi/keyboard_backlight.asl
@@ -23,6 +23,20 @@ Scope (\_SB)
Name (_HID, "GOOG0002")
Name (_UID, 1)
+ /* Ask EC if we even have a backlight
+ * Return 0xf (present, enabled, show in UI, functioning) or 0
+ *
+ * With older EC codebases that don't support the Device
+ * Features bitfield, this reports the keyboard backlight as
+ * enabled since reads to undefined addresses in EC address
+ * space return 0xff and so KBLE will be 1.
+ */
+ Method (_STA, 0, NotSerialized)
+ {
+ Multiply (0xf, \_SB.PCI0.LPCB.EC0.KBLE, Local0)
+ Return (Local0)
+ }
+
/* Read current backlight value */
Method (KBQC, 0, NotSerialized)
{