From 60ebb39885626747ee8fc8226a8afb4e749c47b4 Mon Sep 17 00:00:00 2001 From: David Huang Date: Tue, 8 Jun 2021 16:45:34 +0800 Subject: volet: support factory keyboard test. connector-to-GPIO map: {-1,-1}, { 0, 5}, { 1, 1}, { 1, 0}, { 0, 6}, { 0, 7}, {-1,-1}, {-1,-1}, { 1, 4}, { 1, 3}, {-1,-1}, { 1, 6}, { 1, 7}, { 3, 1}, { 2, 0}, { 1, 5}, { 2, 6}, { 2, 7}, { 2, 1}, { 2, 4}, { 2, 5}, { 1, 2}, { 2, 3}, { 2, 2}, { 3, 0}, {-1,-1}, { 0, 4}, {-1 -1}, { 8, 2}, {-1,-1}, {-1,-1}, BUG=b:187622652 BRANCH=volteer TEST=`ectool kbfactorytest` PASS. Signed-off-by: David Huang Change-Id: I8af839b77466aef9a7d8078b639ab08461935027 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2944523 Reviewed-by: Zhuohao Lee Reviewed-by: Keith Short --- board/volet/board.c | 17 +++++++++++++++++ board/volet/board.h | 4 ++++ 2 files changed, 21 insertions(+) (limited to 'board/volet') diff --git a/board/volet/board.c b/board/volet/board.c index 1b2055a70d..716c4c5481 100644 --- a/board/volet/board.c +++ b/board/volet/board.c @@ -106,6 +106,23 @@ struct keyboard_scan_config keyscan_config = { }, }; +/* + * We have total 30 pins for keyboard connecter {-1, -1} mean + * the N/A pin that don't consider it and reserve index 0 area + * that we don't have pin 0. + */ +const int keyboard_factory_scan_pins[][2] = { + {-1, -1}, {0, 5}, {1, 1}, {1, 0}, {0, 6}, + {0, 7}, {-1, -1}, {-1, -1}, {1, 4}, {1, 3}, + {-1, -1}, {1, 6}, {1, 7}, {3, 1}, {2, 0}, + {1, 5}, {2, 6}, {2, 7}, {2, 1}, {2, 4}, + {2, 5}, {1, 2}, {2, 3}, {2, 2}, {3, 0}, + {-1, -1}, {0, 4}, {-1, -1}, {8, 2}, {-1, -1}, + {-1, -1}, +}; +const int keyboard_factory_scan_pins_used = + ARRAY_SIZE(keyboard_factory_scan_pins); + __override uint32_t board_override_feature_flags0(uint32_t flags0) { /* diff --git a/board/volet/board.h b/board/volet/board.h index 9df22bad5f..bf755f5212 100644 --- a/board/volet/board.h +++ b/board/volet/board.h @@ -35,6 +35,7 @@ #define CONFIG_LED_ONOFF_STATES /* Keyboard features */ +#define CONFIG_KEYBOARD_FACTORY_TEST #define CONFIG_KEYBOARD_REFRESH_ROW3 /* Keyboard backliht */ @@ -194,6 +195,9 @@ void board_reset_pd_mcu(void); void motion_interrupt(enum gpio_signal signal); +extern const int keyboard_factory_scan_pins[][2]; +extern const int keyboard_factory_scan_pins_used; + #endif /* !__ASSEMBLER__ */ #endif /* __CROS_EC_BOARD_H */ -- cgit v1.2.1