summaryrefslogtreecommitdiff
path: root/board/morphius
diff options
context:
space:
mode:
authorZick Wei <zick.wei@quanta.corp-partner.google.com>2020-06-11 16:01:00 +0800
committerCommit Bot <commit-bot@chromium.org>2020-07-07 18:56:05 +0000
commit5a807da6a3bc2708a3a9af09d60ab3307364e494 (patch)
tree674de63b556158fdc84eeea781bcdc8158f3732d /board/morphius
parent5ccfff7bc7c392168ac956b36ffe529863fd704a (diff)
downloadchrome-ec-5a807da6a3bc2708a3a9af09d60ab3307364e494.tar.gz
morphius: enable kayboard factory scanning
This patch add for factory keyboard connector test. BUG=none BRANCH=none TEST=Short keyboard pins and make sure "ectool kbfactorytest" works. Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I9c2c2ae176af63bae811263e0533ac8925a6f130 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2241073 Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org>
Diffstat (limited to 'board/morphius')
-rw-r--r--board/morphius/board.c19
-rw-r--r--board/morphius/board.h6
2 files changed, 25 insertions, 0 deletions
diff --git a/board/morphius/board.c b/board/morphius/board.c
index 0aadb88849..cd413a15dc 100644
--- a/board/morphius/board.c
+++ b/board/morphius/board.c
@@ -614,3 +614,22 @@ const struct power_signal_info power_signal_list[] = {
},
};
BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT);
+
+#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] = {
+ {3, 0}, {2, 2}, {2, 3}, {1, 2}, {2, 5},
+ {2, 4}, {2, 1}, {2, 7}, {2, 6}, {1, 5},
+ {2, 0}, {3, 1}, {1, 7}, {1, 6}, {-1, -1},
+ {1, 3}, {1, 4}, {-1, -1}, {-1, -1}, {0, 7},
+ {0, 6}, {1, 0}, {1, 1}, {0, 5},
+};
+
+const int keyboard_factory_scan_pins_used =
+ ARRAY_SIZE(keyboard_factory_scan_pins);
+#endif
+
diff --git a/board/morphius/board.h b/board/morphius/board.h
index 8aed02128c..6e3e0a08d2 100644
--- a/board/morphius/board.h
+++ b/board/morphius/board.h
@@ -25,6 +25,7 @@
#define CONFIG_8042_AUX
#define CONFIG_PS2
#define CONFIG_CMD_PS2
+#define CONFIG_KEYBOARD_FACTORY_TEST
#undef CONFIG_LED_ONOFF_STATES
#define CONFIG_BATTERY_LEVEL_NEAR_FULL 91
@@ -226,6 +227,11 @@ extern struct usb_mux usbc1_amd_fp5_usb_mux;
void hdmi_hpd_interrupt(enum ioex_signal signal);
+#ifdef CONFIG_KEYBOARD_FACTORY_TEST
+extern const int keyboard_factory_scan_pins[][2];
+extern const int keyboard_factory_scan_pins_used;
+#endif
+
#endif /* !__ASSEMBLER__ */