summaryrefslogtreecommitdiff
path: root/board/chronicler
diff options
context:
space:
mode:
Diffstat (limited to 'board/chronicler')
-rw-r--r--board/chronicler/board.c21
-rw-r--r--board/chronicler/board.h8
2 files changed, 29 insertions, 0 deletions
diff --git a/board/chronicler/board.c b/board/chronicler/board.c
index 2369202c49..78209ce7be 100644
--- a/board/chronicler/board.c
+++ b/board/chronicler/board.c
@@ -202,3 +202,24 @@ const struct pwm_t pwm_channels[] = {
},
};
BUILD_ASSERT(ARRAY_SIZE(pwm_channels) == PWM_CH_COUNT);
+
+/******************************************************************************/
+/* keyboard factory test */
+#ifdef CONFIG_KEYBOARD_FACTORY_TEST
+/*
+ * Map keyboard connector pins to EC GPIO pins for factory test.
+ * Pins mapped to {-1, -1} are skipped.
+ * The connector has 24 pins total, and there is no pin 0.
+ */
+
+const int keyboard_factory_scan_pins[][2] = {
+ {-1, -1}, {0, 5}, {1, 1}, {1, 0}, {0, 6},
+ {0, 7}, {1, 4}, {1, 3}, {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}, {-1, -1}, {-1, -1},
+};
+
+const int keyboard_factory_scan_pins_used =
+ ARRAY_SIZE(keyboard_factory_scan_pins);
+#endif
diff --git a/board/chronicler/board.h b/board/chronicler/board.h
index ca691c437c..c8fc4b464d 100644
--- a/board/chronicler/board.h
+++ b/board/chronicler/board.h
@@ -102,6 +102,9 @@
#define CONFIG_CHARGER_SENSE_RESISTOR 10
#define CONFIG_CHARGER_SENSE_RESISTOR_AC 10
+/* Keyboard feature */
+#define CONFIG_KEYBOARD_FACTORY_TEST
+
/*
* Macros for GPIO signals used in common code that don't match the
* schematic names. Signal names in gpio.inc match the schematic and are
@@ -185,6 +188,11 @@ enum sensor_id {
void board_reset_pd_mcu(void);
+#ifdef CONFIG_KEYBOARD_FACTORY_TEST
+extern const int keyboard_factory_scan_pins[][2];
+extern const int keyboard_factory_scan_pins_used;
+#endif
+
#endif /* !__ASSEMBLER__ */
#endif /* __CROS_EC_BOARD_H */