summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyle Lin <kylelinck@google.com>2022-09-14 10:02:33 +0000
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-09-28 07:13:32 +0000
commita1501d7dafb8030f5c05bfab39a53c5f1e213eb2 (patch)
tree77d90b8abdde2d0ac270d917e2e8b61aacdcc6a9
parent58bb9b518d23617f085b8ef539ac91c36ccc368c (diff)
downloadchrome-ec-a1501d7dafb8030f5c05bfab39a53c5f1e213eb2.tar.gz
yaviks: Detect the number of battery cells
Determine the default battery type by detecting the number of battery cells at runtime. Add the definition of default 3S battery. BUG=b:242477985 BRANCH=none TEST=verify on boards with different battery, AC only can power on system normally. Change-Id: Ib3b18cf29c2d61c539266fdae084372606512be6 Signed-off-by: Kyle Lin <kylelinck@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3891426 Tested-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Reviewed-by: Zhuohao Lee <zhuohao@chromium.org>
-rw-r--r--zephyr/projects/nissa/yaviks/overlay.dts6
-rw-r--r--zephyr/projects/nissa/yaviks/src/charger.c18
2 files changed, 21 insertions, 3 deletions
diff --git a/zephyr/projects/nissa/yaviks/overlay.dts b/zephyr/projects/nissa/yaviks/overlay.dts
index e9c80b7f0c..ac5d2af583 100644
--- a/zephyr/projects/nissa/yaviks/overlay.dts
+++ b/zephyr/projects/nissa/yaviks/overlay.dts
@@ -42,9 +42,6 @@
default_battery: cosmx {
compatible = "cosmx,gh02047xl", "battery-smart";
};
- cosmx_si03058xl {
- compatible = "cosmx,si03058xl", "battery-smart";
- };
dynapack_atl_gh02047xl {
compatible = "dynapack,atl_gh02047xl", "battery-smart";
};
@@ -57,6 +54,9 @@
smp_highpower_gh02047xl {
compatible = "smp,highpower_gh02047xl", "battery-smart";
};
+ default_battery_3s:cosmx_si03058xl {
+ compatible = "cosmx,si03058xl", "battery-smart";
+ };
smp_highpower_si03058xl {
compatible = "smp,highpower_si03058xl", "battery-smart";
};
diff --git a/zephyr/projects/nissa/yaviks/src/charger.c b/zephyr/projects/nissa/yaviks/src/charger.c
index 786bb1bd3c..9be2e685b0 100644
--- a/zephyr/projects/nissa/yaviks/src/charger.c
+++ b/zephyr/projects/nissa/yaviks/src/charger.c
@@ -12,6 +12,7 @@
#include "extpower.h"
#include "usb_pd.h"
#include "nissa_common.h"
+#include "battery_fuel_gauge.h"
LOG_MODULE_DECLARE(nissa, CONFIG_NISSA_LOG_LEVEL);
@@ -54,3 +55,20 @@ __override void board_hibernate(void)
LOG_INF("Charger(s) hibernated");
cflush();
}
+
+__override int board_get_default_battery_type(void)
+{
+ int type = DEFAULT_BATTERY_TYPE;
+ int cells;
+
+ if (charger_get_battery_cells(CHARGER_PRIMARY, &cells) == EC_SUCCESS) {
+ if (cells == 3)
+ type = DEFAULT_BATTERY_TYPE_3S;
+ if (cells != 2 && cells != 3)
+ LOG_ERR("Unexpected number of cells");
+ } else {
+ LOG_ERR("Failed to get default battery type");
+ }
+
+ return type;
+}