diff options
author | Wonjoon Lee <woojoo.lee@samsung.com> | 2016-05-10 22:35:06 +0900 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-05-12 20:13:53 -0700 |
commit | 7a12b8254146ee3e2fda69870814fe14f4498df9 (patch) | |
tree | 44e04f6d592706cc27dd196a4eb94a596c32b08f | |
parent | 7a698b2253e5631473deb1a76ab259164b3070a3 (diff) | |
download | chrome-ec-7a12b8254146ee3e2fda69870814fe14f4498df9.tar.gz |
kevin: add more board id
BUG=None
TEST=cmd 'ver' gets proper version on kevin
Change-Id: I2404c57cf2aa939e5255fb70f0e77299ddf0776e
Signed-off-by: Wonjoon Lee <woojoo.lee@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/343619
Reviewed-by: Shawn N <shawnn@chromium.org>
-rw-r--r-- | board/kevin/board.c | 50 |
1 files changed, 39 insertions, 11 deletions
diff --git a/board/kevin/board.c b/board/kevin/board.c index bee1fef478..037707b95b 100644 --- a/board/kevin/board.c +++ b/board/kevin/board.c @@ -243,21 +243,49 @@ DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT); enum kevin_board_version { BOARD_VERSION_UNKNOWN = -1, - BOARD_VERSION_PROTO1 = 0, - BOARD_VERSION_PROTO2 = 1, - BOARD_VERSION_FUTURE = 2, + BOARD_VERSION_REV0 = 0, + BOARD_VERSION_REV1 = 1, + BOARD_VERSION_REV2 = 2, + BOARD_VERSION_REV3 = 3, + BOARD_VERSION_REV4 = 4, + BOARD_VERSION_REV5 = 5, + BOARD_VERSION_REV6 = 6, + BOARD_VERSION_REV7 = 7, + BOARD_VERSION_REV8 = 8, + BOARD_VERSION_REV9 = 9, + BOARD_VERSION_REV10 = 10, + BOARD_VERSION_REV11 = 11, + BOARD_VERSION_REV12 = 12, + BOARD_VERSION_REV13 = 13, + BOARD_VERSION_REV14 = 14, + BOARD_VERSION_REV15 = 15, BOARD_VERSION_COUNT, }; struct { enum kevin_board_version version; - int thresh_mv; -} const kevin_board_versions[] = { - { BOARD_VERSION_PROTO1, 150 }, /* 2.2 - 3.3 ohm */ - { BOARD_VERSION_PROTO2, 250 }, /* 6.8 - 7.32 ohm */ - { BOARD_VERSION_FUTURE, 3300 }, /* ??? ohm */ + int expect_mv; +} const kevin_boards[] = { + { BOARD_VERSION_REV0, 109 }, /* 51.1K , 2.2K(gru 3.3K) ohm */ + { BOARD_VERSION_REV1, 211 }, /* 51.1k , 6.8K ohm */ + { BOARD_VERSION_REV2, 319 }, /* 51.1K , 11K ohm */ + { BOARD_VERSION_REV3, 427 }, /* 56K , 17.4K ohm */ + { BOARD_VERSION_REV4, 542 }, /* 51.1K , 22K ohm */ + { BOARD_VERSION_REV5, 666 }, /* 51.1K , 30K ohm */ + { BOARD_VERSION_REV6, 781 }, /* 51.1K , 39.2K ohm */ + { BOARD_VERSION_REV7, 900 }, /* 56K , 56K ohm */ + { BOARD_VERSION_REV8, 1023 }, /* 47K , 61.9K ohm */ + { BOARD_VERSION_REV9, 1137 }, /* 47K , 80.6K ohm */ + { BOARD_VERSION_REV10, 1240 }, /* 56K , 124K ohm */ + { BOARD_VERSION_REV11, 1343 }, /* 51.1K , 150K ohm */ + { BOARD_VERSION_REV12, 1457 }, /* 47K , 200K ohm */ + { BOARD_VERSION_REV13, 1576 }, /* 47K , 330K ohm */ + { BOARD_VERSION_REV14, 1684 }, /* 47K , 680K ohm */ + { BOARD_VERSION_REV15, 1800 }, /* 56K , NC */ }; -BUILD_ASSERT(ARRAY_SIZE(kevin_board_versions) == BOARD_VERSION_COUNT); +BUILD_ASSERT(ARRAY_SIZE(kevin_boards) == BOARD_VERSION_COUNT); + +#define THRESHHOLD_MV 56 /* Simply assume 1800/16/2 */ int board_get_version(void) { @@ -275,8 +303,8 @@ int board_get_version(void) gpio_set_level(GPIO_EC_BOARD_ID_EN_L, 1); for (i = 0; i < BOARD_VERSION_COUNT; ++i) { - if (mv < kevin_board_versions[i].thresh_mv) { - version = kevin_board_versions[i].version; + if (mv < kevin_boards[i].expect_mv + THRESHHOLD_MV) { + version = kevin_boards[i].version; break; } } |