aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAseda Aboagye <aaboagye@google.com>2024-06-08 03:48:04 +0000
committerFelix Held <felix-coreboot@felixheld.de>2024-06-24 15:17:56 +0000
commitc72c760f4a934538af6d231c182da7aa802c30d1 (patch)
treee040f2036c1b6a22325d803fbf4f31dcab933c6a /src
parent2f69c2c40a91b18c7df539cde4260b025903a8b2 (diff)
acpigen_ps2_keybd: Support a Do Not Disturb key
This commit simply adds support for a Do Not Disturb key. HUTRR94 added support for a new usage titled "System Do Not Disturb" which toggles a system-wide Do Not Disturb setting. BUG=b:342467600 TEST=Build and flash a board that generates a scancode for a Do Not Disturb key. Verify that KEY_DO_NOT_DISTURB is generated in the Linux kernel with patches[0] that add this new event code using `evtest`. [0] - https://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git/commit/?id=22d6d060ac77955291deb43efc2f3f4f9632c6cb Change-Id: I26e719bbde5106305282fe43dd15833a3e48e41e Signed-off-by: Aseda Aboagye <aaboagye@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/82997 Reviewed-by: Caveh Jalali <caveh@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Forest Mittelberg <bmbm@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/acpi/acpigen_ps2_keybd.c1
-rw-r--r--src/ec/google/chromeec/ec_acpi.c1
-rw-r--r--src/include/acpi/acpigen_ps2_keybd.h1
3 files changed, 3 insertions, 0 deletions
diff --git a/src/acpi/acpigen_ps2_keybd.c b/src/acpi/acpigen_ps2_keybd.c
index e4322c16b6..43a1eced59 100644
--- a/src/acpi/acpigen_ps2_keybd.c
+++ b/src/acpi/acpigen_ps2_keybd.c
@@ -58,6 +58,7 @@ static const uint32_t action_keymaps[] = {
[PS2_KEY_MENU] = KEYMAP(0xdd, KEY_CONTROLPANEL), /* e0d5 */
[PS2_KEY_DICTATE] = KEYMAP(0xa7, KEY_DICTATE), /* e027*/
[PS2_KEY_ACCESSIBILITY] = KEYMAP(0xa9, KEY_ACCESSIBILITY), /* e029 */
+ [PS2_KEY_DO_NOT_DISTURB] = KEYMAP(0xa8, KEY_DO_NOT_DISTURB), /* e028 */
};
/* Keymap for numeric keypad keys */
diff --git a/src/ec/google/chromeec/ec_acpi.c b/src/ec/google/chromeec/ec_acpi.c
index 6e36a7fd1a..1c97dcc92d 100644
--- a/src/ec/google/chromeec/ec_acpi.c
+++ b/src/ec/google/chromeec/ec_acpi.c
@@ -235,6 +235,7 @@ static const enum ps2_action_key ps2_enum_val[] = {
[TK_MENU] = PS2_KEY_MENU,
[TK_DICTATE] = PS2_KEY_DICTATE,
[TK_ACCESSIBILITY] = PS2_KEY_ACCESSIBILITY,
+ [TK_DONOTDISTURB] = PS2_KEY_DO_NOT_DISTURB,
};
static void fill_ssdt_ps2_keyboard(const struct device *dev)
diff --git a/src/include/acpi/acpigen_ps2_keybd.h b/src/include/acpi/acpigen_ps2_keybd.h
index fe1101bf76..deb755bbf8 100644
--- a/src/include/acpi/acpigen_ps2_keybd.h
+++ b/src/include/acpi/acpigen_ps2_keybd.h
@@ -29,6 +29,7 @@ enum ps2_action_key {
PS2_KEY_MENU,
PS2_KEY_DICTATE,
PS2_KEY_ACCESSIBILITY,
+ PS2_KEY_DO_NOT_DISTURB,
};
#define PS2_MIN_TOP_ROW_KEYS 2