diff options
author | Abe Levkoy <alevkoy@chromium.org> | 2022-01-20 15:09:40 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2022-01-24 17:26:08 +0000 |
commit | 4465f66c26e456f529a00386db5862bef3483419 (patch) | |
tree | 19ea58eae67b2a0356a24f12579309a8b08a18d0 | |
parent | 0d31ddfbd8c82a1fde33d5adb739d5383fd5d8c1 (diff) | |
download | chrome-ec-4465f66c26e456f529a00386db5862bef3483419.tar.gz |
zephyr test: Configure charging power in DTS
Use the device tree to configure the battery's desired charging voltage
and current. Do not modify the device parameters during the driver unit
test. The battery charging voltage and current are not directly related
to the VBUS voltage and current, so do not check that the charging
voltage matches VBUS.
BUG=b:213908743,b:213909940
TEST=zmake configure --test zephyr/test/drivers
BRANCH=none
Signed-off-by: Abe Levkoy <alevkoy@chromium.org>
Change-Id: I99ca3da7e49755587cd73347bb56f5e372e99d91
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3405644
Reviewed-by: Denis Brockus <dbrockus@chromium.org>
-rw-r--r-- | zephyr/include/emul/emul_smart_battery.h | 1 | ||||
-rw-r--r-- | zephyr/test/drivers/overlay.dts | 3 | ||||
-rw-r--r-- | zephyr/test/drivers/src/integration_usb.c | 10 | ||||
-rw-r--r-- | zephyr/test/drivers/src/smart.c | 4 |
4 files changed, 7 insertions, 11 deletions
diff --git a/zephyr/include/emul/emul_smart_battery.h b/zephyr/include/emul/emul_smart_battery.h index b48f836d66..69425997a1 100644 --- a/zephyr/include/emul/emul_smart_battery.h +++ b/zephyr/include/emul/emul_smart_battery.h @@ -15,6 +15,7 @@ #include <emul.h> #include <drivers/i2c.h> #include <drivers/i2c_emul.h> +#include <stdint.h> /** * @brief Smart Battery emulator backend API diff --git a/zephyr/test/drivers/overlay.dts b/zephyr/test/drivers/overlay.dts index 783dddf863..3bad41dde4 100644 --- a/zephyr/test/drivers/overlay.dts +++ b/zephyr/test/drivers/overlay.dts @@ -638,6 +638,9 @@ label = "BATTERY"; cycle-count = <99>; version = "BATTERY_SPEC_VER_1_1_WITH_PEC"; + /* Real battery voltages are multiples of 4.4V. */ + desired-charg-volt = <5000>; + desired-charg-cur = <1000>; }; bma_emul: bma@18 { diff --git a/zephyr/test/drivers/src/integration_usb.c b/zephyr/test/drivers/src/integration_usb.c index 9bafad3341..14c524aa7e 100644 --- a/zephyr/test/drivers/src/integration_usb.c +++ b/zephyr/test/drivers/src/integration_usb.c @@ -161,15 +161,11 @@ static void test_attach_pd_charger(void) charge_params.cmd = CHARGE_STATE_CMD_GET_STATE; zassert_ok(host_command_process(&args), "Failed to get charge state"); zassert_true(charge_response.get_state.ac, "USB default but AC absent"); - /* - * TODO(b/213909940): This check will fail if test_suite_smart_battery - * has not been run previously. Figure out why and fix it. - */ - zassert_equal(charge_response.get_state.chg_voltage, 5000, - "USB default voltage %dmV", + zassert_true(charge_response.get_state.chg_voltage > 0, + "Battery charging voltage %dmV", charge_response.get_state.chg_voltage); zassert_true(charge_response.get_state.chg_current > 0, - "USB default current %dmA", + "Battery charging current %dmA", charge_response.get_state.chg_current); typec_params.port = 0; diff --git a/zephyr/test/drivers/src/smart.c b/zephyr/test/drivers/src/smart.c index 57e02eeff9..82a2fe3037 100644 --- a/zephyr/test/drivers/src/smart.c +++ b/zephyr/test/drivers/src/smart.c @@ -248,10 +248,6 @@ static void test_battery_get_params(void) emul = sbat_emul_get_ptr(BATTERY_ORD); bat = sbat_emul_get_bat_data(emul); - /* Battery wants to charge */ - bat->desired_charg_cur = 1000; - bat->desired_charg_volt = 5000; - /* Fail temperature read */ i2c_common_emul_set_read_fail_reg(emul, SB_TEMPERATURE); flags = BATT_FLAG_WANT_CHARGE | BATT_FLAG_RESPONSIVE | |