libpayload: i8042: Enable keyboard translation by default on exit
Add a Kconfig option to set the keyboard translation state on exit and set the default to true. This restores the keyboard to the power-up defaults for firmware that does not always run libpayload keyboard init to have consistent state, and provides an option to disable translation for keyboards that might need it. Change-Id: I25dfe3f425a5bb57e97476564886672b707aa3bd Signed-off-by: Duncan Laurie <dlaurie@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/52737 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Angel Pons <th3fanbus@gmail.com> Reviewed-by: Felix Singer <felixsinger@posteo.net> Reviewed-by: Raul Rangel <rrangel@chromium.org> Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
parent
e46e740f91
commit
d87bbde169
|
@ -385,6 +385,11 @@ config PC_KEYBOARD_LAYOUT_DE
|
||||||
depends on PC_KEYBOARD
|
depends on PC_KEYBOARD
|
||||||
default n
|
default n
|
||||||
|
|
||||||
|
config PC_KEYBOARD_TRANSLATION
|
||||||
|
bool "Enable or Disable translation in PC keyboard set 2 on exit"
|
||||||
|
depends on PC_KEYBOARD
|
||||||
|
default y
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
menu "Drivers"
|
menu "Drivers"
|
||||||
|
|
|
@ -658,7 +658,7 @@ void keyboard_disconnect(void)
|
||||||
/* Nobody but us seems to still use scancode set #1.
|
/* Nobody but us seems to still use scancode set #1.
|
||||||
So try to hand over with more modern settings. */
|
So try to hand over with more modern settings. */
|
||||||
set_scancode_set(2);
|
set_scancode_set(2);
|
||||||
i8042_set_kbd_translation(false);
|
i8042_set_kbd_translation(CONFIG(LP_PC_KEYBOARD_TRANSLATION));
|
||||||
|
|
||||||
/* Send keyboard disconnect command */
|
/* Send keyboard disconnect command */
|
||||||
i8042_cmd(I8042_CMD_DIS_KB);
|
i8042_cmd(I8042_CMD_DIS_KB);
|
||||||
|
|
Loading…
Reference in New Issue