From 245b494e145d6a928aa277670432d396862698f9 Mon Sep 17 00:00:00 2001 From: Duncan Laurie Date: Fri, 23 Mar 2018 22:33:17 -0700 Subject: keyboard: Add config option for refresh key row The keyboards that have an assistant key also move the row that the refresh key is on from 2 to 3. The row is hardcoded and used by the early boot key detection code to determine if boot keys should be honored. The fallout from not having the right refresh row defined was not seen on Eve because that board has a different quirk where it does not distinguish reset-pin vs power-on reset types so the test in check_boot_keys() was not failing. BUG=b:76232955 BRANCH=none TEST=manual testing on Eve board Change-Id: I5b94b4e32024afa1768bdf371a7eb951753014e8 Signed-off-by: Duncan Laurie Reviewed-on: https://chromium-review.googlesource.com/979574 Reviewed-by: Furquan Shaikh --- include/config.h | 7 +++++++ include/keyboard_config.h | 4 ++++ 2 files changed, 11 insertions(+) (limited to 'include') diff --git a/include/config.h b/include/config.h index 6b884a8948..c163ee5bb5 100644 --- a/include/config.h +++ b/include/config.h @@ -1830,6 +1830,13 @@ */ #undef CONFIG_KEYBOARD_COL2_INVERTED +/* + * Keyboards with the assistant key also move the refresh key matrix to row 3 + * instead of row 2. This is used by the boot key detection code to determine + * if the refresh key is held down at boot. + */ +#undef CONFIG_KEYBOARD_REFRESH_ROW3 + /* * Config KSO to start from a different KSO pin. This is to allow some chips * to use alternate functions on KSO pins. diff --git a/include/keyboard_config.h b/include/keyboard_config.h index 6e6fcef7f8..b4aa21ad99 100644 --- a/include/keyboard_config.h +++ b/include/keyboard_config.h @@ -33,7 +33,11 @@ #define KEYBOARD_ROW_LEFT_ALT 6 #define KEYBOARD_MASK_LEFT_ALT KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_LEFT_ALT) #define KEYBOARD_COL_REFRESH 2 +#ifdef CONFIG_KEYBOARD_REFRESH_ROW3 +#define KEYBOARD_ROW_REFRESH 3 +#else #define KEYBOARD_ROW_REFRESH 2 +#endif #define KEYBOARD_MASK_REFRESH KEYBOARD_ROW_TO_MASK(KEYBOARD_ROW_REFRESH) #define KEYBOARD_COL_RIGHT_ALT 10 #define KEYBOARD_ROW_RIGHT_ALT 0 -- cgit v1.2.1