From 42506cba29fa5960aa08243c1fb951a130117b34 Mon Sep 17 00:00:00 2001 From: Diana Z Date: Wed, 17 Aug 2022 14:55:43 -0600 Subject: Zephyr test: Generalize charge control utility Generalize the charge control utility so it can be used with any parameters which are valid for that host command. BRANCH=None BUG=b:236074684 TEST=twister -T ./zephyr/test Signed-off-by: Diana Z Change-Id: I501db791401797ac1030e3474de361423544545f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3835255 Reviewed-by: Al Semjonovs Commit-Queue: Al Semjonovs Code-Coverage: Zoss --- zephyr/test/drivers/common/include/test/drivers/utils.h | 14 +++++++++----- zephyr/test/drivers/default/src/console_cmd/charge_state.c | 3 ++- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/zephyr/test/drivers/common/include/test/drivers/utils.h b/zephyr/test/drivers/common/include/test/drivers/utils.h index a8294424a5..b5b3aee3d5 100644 --- a/zephyr/test/drivers/common/include/test/drivers/utils.h +++ b/zephyr/test/drivers/common/include/test/drivers/utils.h @@ -133,16 +133,20 @@ host_cmd_usb_pd_control(int port, enum usb_pd_control_swap swap) } /** - * Run the host command to get the charge state. + * Run the host command to control or query the charge state * * @return The result of the query. */ static inline struct ec_response_charge_control -host_cmd_get_charge_control(void) +host_cmd_charge_control(enum ec_charge_control_mode mode, + enum ec_charge_control_cmd cmd) { - struct ec_params_charge_control params = { - .cmd = EC_CHARGE_CONTROL_CMD_GET - }; + struct ec_params_charge_control params = { .cmd = cmd, + .mode = mode, + .sustain_soc = { + .lower = -1, + .upper = -1, + } }; struct ec_response_charge_control response; struct host_cmd_handler_args args = BUILD_HOST_COMMAND(EC_CMD_CHARGE_CONTROL, 2, response, params); diff --git a/zephyr/test/drivers/default/src/console_cmd/charge_state.c b/zephyr/test/drivers/default/src/console_cmd/charge_state.c index 0edaee44c4..9c7d633a7f 100644 --- a/zephyr/test/drivers/default/src/console_cmd/charge_state.c +++ b/zephyr/test/drivers/default/src/console_cmd/charge_state.c @@ -277,7 +277,8 @@ ZTEST_USER(console_cmd_charge_state, test_sustain) zassert_ok(shell_execute_cmd(get_ec_shell(), "chgstate sustain 30 50"), NULL); - charge_control_values = host_cmd_get_charge_control(); + charge_control_values = host_cmd_charge_control( + CHARGE_CONTROL_NORMAL, EC_CHARGE_CONTROL_CMD_GET); zassert_equal(charge_control_values.sustain_soc.lower, 30, NULL); zassert_equal(charge_control_values.sustain_soc.upper, 50, NULL); } -- cgit v1.2.1