From 10bbb633bed888b3c433488b10da075b5cc54970 Mon Sep 17 00:00:00 2001 From: wen zhang Date: Mon, 17 Apr 2023 20:36:43 +0800 Subject: zephyr: led: Change the node depends on display SOC This change makes the zephyr shim led driver use the display SoC for the LED node that depends on battery level, so that the charge LED and the display SoC work synchronously. BUG=b:278512388 BRANCH=none TEST=./twister -T zephyr/test/drivers/ -s drivers.led_driver Change-Id: I82a9e6a18486fb806f49855fbb5773bd7176929a Signed-off-by: wen zhang Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4430138 Reviewed-by: Daisuke Nojiri Reviewed-by: Siyu Qin (cherry picked from commit d2ef1409f02da2114d5cd28ec505a3bb897ed655) Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4478775 Reviewed-by: Diana Z Tested-by: JohnWC Yeh Commit-Queue: Chao Gui Reviewed-by: SamSP Liu --- zephyr/shim/src/led_driver/led.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/zephyr/shim/src/led_driver/led.c b/zephyr/shim/src/led_driver/led.c index 19324487e9..d13918b125 100644 --- a/zephyr/shim/src/led_driver/led.c +++ b/zephyr/shim/src/led_driver/led.c @@ -235,7 +235,8 @@ static int match_node(int node_idx) /* Check if this node depends on battery level */ if (node_array[node_idx].batt_lvl[0] != -1) { - int curr_batt_lvl = charge_get_percent(); + int curr_batt_lvl = + DIV_ROUND_NEAREST(charge_get_display_charge(), 10); if ((curr_batt_lvl < node_array[node_idx].batt_lvl[0]) || (curr_batt_lvl > node_array[node_idx].batt_lvl[1])) -- cgit v1.2.1