summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbe Levkoy <alevkoy@chromium.org>2022-01-20 15:09:40 -0700
committerCommit Bot <commit-bot@chromium.org>2022-01-24 17:26:08 +0000
commit4465f66c26e456f529a00386db5862bef3483419 (patch)
tree19ea58eae67b2a0356a24f12579309a8b08a18d0
parent0d31ddfbd8c82a1fde33d5adb739d5383fd5d8c1 (diff)
downloadchrome-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.h1
-rw-r--r--zephyr/test/drivers/overlay.dts3
-rw-r--r--zephyr/test/drivers/src/integration_usb.c10
-rw-r--r--zephyr/test/drivers/src/smart.c4
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 |