diff options
-rw-r--r-- | board/host/board.h | 1 | ||||
-rw-r--r-- | test/lid_sw.c | 10 | ||||
-rw-r--r-- | test/power_button.c | 10 |
3 files changed, 21 insertions, 0 deletions
diff --git a/board/host/board.h b/board/host/board.h index 9301d24e00..9eed6678b5 100644 --- a/board/host/board.h +++ b/board/host/board.h @@ -15,6 +15,7 @@ #define CONFIG_POWER_BUTTON #undef CONFIG_WATCHDOG #define CONFIG_PWM +#define CONFIG_SWITCH #undef CONFIG_CONSOLE_HISTORY #define CONFIG_CONSOLE_HISTORY 4 diff --git a/test/lid_sw.c b/test/lid_sw.c index cf04d91efb..52a4d033cb 100644 --- a/test/lid_sw.c +++ b/test/lid_sw.c @@ -30,6 +30,12 @@ static void lid_change_hook(void) } DECLARE_HOOK(HOOK_LID_CHANGE, lid_change_hook, HOOK_PRIO_DEFAULT); +int lid_memmap_state(void) +{ + uint8_t *memmap = host_get_memmap(EC_MEMMAP_SWITCHES); + return *memmap & EC_SWITCH_LID_OPEN; +} + static int test_hook(void) { /* Close lid for testing */ @@ -44,6 +50,7 @@ static int test_hook(void) msleep(50); TEST_ASSERT(lid_hook_count == 1); TEST_ASSERT(lid_is_open()); + TEST_ASSERT(lid_memmap_state()); TEST_ASSERT(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN)); @@ -52,6 +59,7 @@ static int test_hook(void) msleep(50); TEST_ASSERT(lid_hook_count == 2); TEST_ASSERT(!lid_is_open()); + TEST_ASSERT(!lid_memmap_state()); TEST_ASSERT(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_CLOSED)); @@ -72,6 +80,7 @@ static int test_debounce(void) msleep(20); TEST_ASSERT(lid_hook_count == 0); TEST_ASSERT(!lid_is_open()); + TEST_ASSERT(!lid_memmap_state()); TEST_ASSERT(!(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN))); @@ -80,6 +89,7 @@ static int test_debounce(void) msleep(50); TEST_ASSERT(lid_hook_count == 0); TEST_ASSERT(!lid_is_open()); + TEST_ASSERT(!lid_memmap_state()); TEST_ASSERT(!(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_LID_OPEN))); diff --git a/test/power_button.c b/test/power_button.c index 7ed2211cc6..5f7231b9f4 100644 --- a/test/power_button.c +++ b/test/power_button.c @@ -36,6 +36,12 @@ static void pb_change_hook(void) } DECLARE_HOOK(HOOK_POWER_BUTTON_CHANGE, pb_change_hook, HOOK_PRIO_DEFAULT); +int pb_memmap_state(void) +{ + uint8_t *memmap = host_get_memmap(EC_MEMMAP_SWITCHES); + return *memmap & EC_SWITCH_POWER_BUTTON_PRESSED; +} + static int test_hook(void) { /* Release power button for testing */ @@ -50,6 +56,7 @@ static int test_hook(void) msleep(50); TEST_ASSERT(pb_hook_count == 1); TEST_ASSERT(power_button_is_pressed()); + TEST_ASSERT(pb_memmap_state()); TEST_ASSERT(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON)); host_clear_events(0xffffffff); @@ -59,6 +66,7 @@ static int test_hook(void) msleep(50); TEST_ASSERT(pb_hook_count == 2); TEST_ASSERT(!power_button_is_pressed()); + TEST_ASSERT(!pb_memmap_state()); TEST_ASSERT(!(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON))); @@ -79,6 +87,7 @@ static int test_debounce(void) msleep(20); TEST_ASSERT(pb_hook_count == 0); TEST_ASSERT(!power_button_is_pressed()); + TEST_ASSERT(!pb_memmap_state()); TEST_ASSERT(!(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON))); @@ -87,6 +96,7 @@ static int test_debounce(void) msleep(50); TEST_ASSERT(pb_hook_count == 0); TEST_ASSERT(!power_button_is_pressed()); + TEST_ASSERT(!pb_memmap_state()); TEST_ASSERT(!(host_get_events() & EC_HOST_EVENT_MASK(EC_HOST_EVENT_POWER_BUTTON))); |