summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWonjoon Lee <woojoo.lee@samsung.com>2013-09-04 11:08:18 +0900
committerRandall Spangler <rspangler@chromium.org>2013-09-06 17:44:31 +0000
commite311966a5b0f04283c34079cebd5ca3792645898 (patch)
tree1f2797916c13a64feeb9e098f85becdaeee2d522
parenta43ea2b12aa9ad372efebae6a27498f52acd34ef (diff)
downloadchrome-ec-e311966a5b0f04283c34079cebd5ca3792645898.tar.gz
pit: Add board specific keyscan config
This timing values act as most similar with 8042 which we used in snow And some keyscan jig can not regognize current debounce timing, It based on 8042 timing. BUG=chrome-os-partner:22019 TEST= build and update ec, reboot and see keyscan is fine Orig-Change-Id: I48f01f2e1247db5fa324b0896301616c42032585 Signed-off-by: Wonjoon Lee <woojoo.lee@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/168003 Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Tested-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Randall Spangler <rspangler@chromium.org> (cherry picked from commit 2dc4680dee25b84ed924be3f5dad9624248b3922) Change-Id: Ia863b3056218c913f9aa9dee736c5df18f3804d5 Reviewed-on: https://chromium-review.googlesource.com/168404 Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Queue: Randall Spangler <rspangler@chromium.org> Tested-by: Randall Spangler <rspangler@chromium.org>
-rw-r--r--board/pit/board.c15
-rw-r--r--board/pit/board.h1
2 files changed, 16 insertions, 0 deletions
diff --git a/board/pit/board.c b/board/pit/board.c
index 6a5dc07c15..f4c1292bd3 100644
--- a/board/pit/board.c
+++ b/board/pit/board.c
@@ -10,11 +10,13 @@
#include "gaia_power.h"
#include "gpio.h"
#include "i2c.h"
+#include "keyboard_scan.h"
#include "keyboard_raw.h"
#include "lid_switch.h"
#include "pmu_tpschrome.h"
#include "registers.h"
#include "spi.h"
+#include "timer.h"
#include "task.h"
#include "util.h"
@@ -107,6 +109,19 @@ const struct i2c_port_t i2c_ports[] = {
};
BUILD_ASSERT(ARRAY_SIZE(i2c_ports) == I2C_PORTS_USED);
+struct keyboard_scan_config keyscan_config = {
+ .output_settle_us = 40,
+ .debounce_down_us = 6 * MSEC,
+ .debounce_up_us = 30 * MSEC,
+ .scan_period_us = 1500,
+ .min_post_scan_delay_us = 1000,
+ .poll_timeout_us = SECOND,
+ .actual_key_mask = {
+ 0x14, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xff,
+ 0xa4, 0xff, 0xf6, 0x55, 0xfa, 0xc8 /* full set */
+ },
+};
+
int pmu_board_init(void)
{
int ver, failure = 0;
diff --git a/board/pit/board.h b/board/pit/board.h
index c9f4e5d51e..4411ab47c0 100644
--- a/board/pit/board.h
+++ b/board/pit/board.h
@@ -16,6 +16,7 @@
#define CONFIG_CMD_PMU
#define CONFIG_EXTPOWER_GPIO
#define CONFIG_I2C
+#define CONFIG_KEYBOARD_BOARD_CONFIG
#define CONFIG_KEYBOARD_PROTOCOL_MKBP
#define CONFIG_PMU_HARD_RESET
#define CONFIG_PMU_POWERINFO