From 9ca749eb1a57a7e8c705ec0f11ab992d8394cc37 Mon Sep 17 00:00:00 2001 From: Rajat Jain Date: Thu, 20 Feb 2020 18:17:21 -0800 Subject: common/keyboard_vivaldi: New keyboard framework for custom layout Vivaldi is a new keyboard that allows individual boards to have additional or different top row keys and/or to reorder those keys. The primary agenda of vivaldi is to allow customization of the top row keys. However, as a secondary objective, it also allows coreboot to send a keymap to the kernel, for only the keys that are actually present on the keyboard. As part of enabling vivaldi, another feature that get enabled is to start sending action codes instead of function codes for the top row of the keyboard. go/vivaldi-prd go/vivaldi-design go/vivaldi-fw-design With this patch, things remain unchanged for any boards that do not provide board_set_vivaldi_keybd_config(). For boards that do provide it: * EC begins to send action scancodes instead of function scancodes for the top row when top row keys are pressed. * EC responds to an EC command from the coreboot, that asks for the layout for the keyboard. Coreboot uses this to expose corresponding keycodes to the kernel. BUG=b:146501925 TEST=Check on Jinlon the (new) expected scancodes are output from EC. BRANCH=firmware-hatch-12672.B Signed-off-by: Rajat Jain Change-Id: I1f45ce6eee138a984f8d4caef1ec76c9538dd30b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2135566 --- board/rammus/board.h | 1 + 1 file changed, 1 insertion(+) (limited to 'board/rammus') diff --git a/board/rammus/board.h b/board/rammus/board.h index 738db9c73c..24f9069c60 100644 --- a/board/rammus/board.h +++ b/board/rammus/board.h @@ -21,6 +21,7 @@ #define CONFIG_I2C #define CONFIG_I2C_MASTER #define CONFIG_KEYBOARD_COL2_INVERTED +#undef CONFIG_KEYBOARD_VIVALDI #define CONFIG_KEYBOARD_PROTOCOL_8042 #define CONFIG_LED_COMMON #define CONFIG_LID_SWITCH -- cgit v1.2.1