summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Massey <aaronmassey@google.com>2021-11-01 15:07:29 -0600
committerCommit Bot <commit-bot@chromium.org>2021-11-02 17:16:12 +0000
commit1c27d8e06fc810b6cd86a106742f4e890d3b75e4 (patch)
treeb8f6f938d5a0521c5c0ce09df5b08955108c27a9
parentafe0ae3c652c1863b22649079422d7d93da71374 (diff)
downloadchrome-ec-1c27d8e06fc810b6cd86a106742f4e890d3b75e4.tar.gz
zephyr: test: failing reg_track_ctrl for battery
At initialization, the ln9310 driver for chips with the 2S battery cell type access the reg_track_ctrl register to check the battery's voltage. Verify a failure to read this register is appropriately handled. BRANCH=none BUG=b:184856083 TEST=zmake configure --test zephyr/test/drivers Signed-off-by: Aaron Massey <aaronmassey@google.com> Change-Id: I2e5202795ea57fb2754e9e10adc5d89d25069eeb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3252927 Reviewed-by: Yuval Peress <peress@google.com>
-rw-r--r--zephyr/test/drivers/src/ln9310.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/zephyr/test/drivers/src/ln9310.c b/zephyr/test/drivers/src/ln9310.c
index 13874396a8..7b3ae1617f 100644
--- a/zephyr/test/drivers/src/ln9310.c
+++ b/zephyr/test/drivers/src/ln9310.c
@@ -307,7 +307,7 @@ static void test_ln9310_2s_battery_read_fails(void)
ln9310_emul_set_context(emulator);
ln9310_emul_reset(emulator);
- /* Battery won't matter here so only testing one version */
+
ln9310_emul_set_battery_cell_type(emulator, BATTERY_CELL_TYPE_2S);
ln9310_emul_set_version(emulator, LN9310_BC_STS_C_CHIP_REV_FIXED);
@@ -319,6 +319,17 @@ static void test_ln9310_2s_battery_read_fails(void)
/* TODO(b/201420132) */
k_msleep(TEST_DELAY_MS);
zassert_false(ln9310_power_good(), NULL);
+
+ /* For Battery 2S Versions: Test Read Battery Voltage Failure Too */
+ ln9310_emul_reset(emulator);
+ ln9310_emul_set_battery_cell_type(emulator, BATTERY_CELL_TYPE_2S);
+ ln9310_emul_set_version(emulator, LN9310_BC_STS_C_CHIP_REV_FIXED);
+
+ i2c_common_emul_set_read_fail_reg(i2c_emul, LN9310_REG_TRACK_CTRL);
+
+ zassert_false(ln9310_init() == 0, NULL);
+ i2c_common_emul_set_read_fail_reg(i2c_emul,
+ I2C_COMMON_EMUL_NO_FAIL_REG);
}
static void test_ln9310_lion_ctrl_reg_fails(void)