diff options
author | Aaron Massey <aaronmassey@google.com> | 2021-11-30 14:12:06 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-12-01 18:07:59 +0000 |
commit | b14d1d984feab126c12c5be35f279c74949a492c (patch) | |
tree | 651105b44ab8d7597effc0775ef43675a5587c6f /zephyr/test | |
parent | 2dd48d46985ad2ee76d5e6a324893c782a95e889 (diff) | |
download | chrome-ec-b14d1d984feab126c12c5be35f279c74949a492c.tar.gz |
zephyr: test: verify sn5s330 vbus_discharge func
Verify sn5s330 driver api for enabling discharge through VBUS.
BRANCH=none
BUG=b:203364783
TEST=zmake configure --test test-drivers
Signed-off-by: Aaron Massey <aaronmassey@google.com>
Change-Id: I4ef282f5f461cb17aa83a99cde3b8b8cdabf769d
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3309367
Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
Diffstat (limited to 'zephyr/test')
-rw-r--r-- | zephyr/test/drivers/src/ppc_sn5s330.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/zephyr/test/drivers/src/ppc_sn5s330.c b/zephyr/test/drivers/src/ppc_sn5s330.c index 0dbd7b26a9..d8072c2673 100644 --- a/zephyr/test/drivers/src/ppc_sn5s330.c +++ b/zephyr/test/drivers/src/ppc_sn5s330.c @@ -185,6 +185,23 @@ static void test_vbus_source_sink_enable(void) zassert_equal(func_set3_reg & SN5S330_PP2_EN, 0, NULL); } +static void test_vbus_discharge(void) +{ + const struct emul *emul = EMUL; + uint8_t func_set3_reg; + + zassert_ok(sn5s330_drv.init(SN5S330_PORT), NULL); + + /* Test enable/disable VBUS discharging */ + zassert_ok(sn5s330_drv.discharge_vbus(SN5S330_PORT, true), NULL); + sn5s330_emul_peek_reg(emul, SN5S330_FUNC_SET3, &func_set3_reg); + zassert_not_equal(func_set3_reg & SN5S330_VBUS_DISCH_EN, 0, NULL); + + zassert_ok(sn5s330_drv.discharge_vbus(SN5S330_PORT, false), NULL); + sn5s330_emul_peek_reg(emul, SN5S330_FUNC_SET3, &func_set3_reg); + zassert_equal(func_set3_reg & SN5S330_VBUS_DISCH_EN, 0, NULL); +} + static void reset_sn5s330_state(void) { struct i2c_emul *i2c_emul = sn5s330_emul_to_i2c_emul(EMUL); @@ -198,6 +215,9 @@ void test_suite_ppc_sn5s330(void) { ztest_test_suite( ppc_sn5s330, + ztest_unit_test_setup_teardown(test_vbus_discharge, + reset_sn5s330_state, + reset_sn5s330_state), ztest_unit_test_setup_teardown(test_vbus_source_sink_enable, reset_sn5s330_state, reset_sn5s330_state), |