diff options
-rw-r--r-- | src/acpi/Kconfig | 8 | ||||
-rw-r--r-- | src/acpi/acpigen_ps2_keybd.c | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/acpi/Kconfig b/src/acpi/Kconfig index 417ff60abb..2bb56ba91d 100644 --- a/src/acpi/Kconfig +++ b/src/acpi/Kconfig @@ -14,6 +14,14 @@ config ACPI_CPU_STRING Specifies the ACPI name format string used by the acpigen function to generate the processor scope. Default is CPxx. +config ACPI_FNKEY_GEN_SCANCODE + int + default 0 + help + Specifies the scancode, if any, which is generated when the Fn key is + pressed. A value of 0 is ignored, which is the default since most + keyboards do not emit a scancode for the Fn key. + config ACPI_HAVE_PCAT_8259 def_bool y if !ACPI_NO_PCAT_8259 diff --git a/src/acpi/acpigen_ps2_keybd.c b/src/acpi/acpigen_ps2_keybd.c index 6590e6688d..cc21d5df5a 100644 --- a/src/acpi/acpigen_ps2_keybd.c +++ b/src/acpi/acpigen_ps2_keybd.c @@ -244,6 +244,13 @@ static void ssdt_generate_keymap(struct acpi_dp *dp, uint8_t num_top_row_keys, acpi_dp_add_integer(dp_array, NULL, keymap); } + /* Add the Fn-key */ + if (CONFIG_ACPI_FNKEY_GEN_SCANCODE != 0) { + acpi_dp_add_integer(dp_array, NULL, KEYMAP(CONFIG_ACPI_FNKEY_GEN_SCANCODE, + KEY_FN)); + total++; + } + total += num_top_row_keys; } |