summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWai-Hong Tam <waihong@google.com>2020-07-15 14:16:14 -0700
committerCommit Bot <commit-bot@chromium.org>2021-09-11 01:19:43 +0000
commitfd5ea4c989ecf900a1be8c065e518c8187171ab0 (patch)
tree9eef86cf6ae21d78b8fa9d7dfa353cf03c77ba79
parent357bd977d1bdc5dd61a2a1fcc6f08ee6f97de6d0 (diff)
downloadchrome-ec-fd5ea4c989ecf900a1be8c065e518c8187171ab0.tar.gz
battery: Expose battery_manufacture_date() as API
The newer kernels request this data. Add the battery_manufacture_date() as a new API. Checked the TRMs of the following batteries. They don't have any way to query the manufacture date, so return EC_ERROR_UNIMPLEMENTED. * bq27541 * bq27621_g1 * max17055 * mm8013 BRANCH=None BUG=b:160784792 TEST=Hacked to print the manufacture date, on both battery present and not. Change-Id: I1deefb64f6cc594828d6c10c42fa7107dadd7559 Signed-off-by: Wai-Hong Tam <waihong@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2300689 Commit-Queue: Douglas Anderson <dianders@chromium.org> Reviewed-by: Douglas Anderson <dianders@chromium.org> (cherry picked from commit 0b48d88cc8cf085ece95dc9ebf66b8a07eb72696) Conflicts: driver/battery/mm8013.c [missing in scarlet branch] Change-Id: I92fa46c4ded590d5286ef28f4c0209b72eb9b223 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3154564 Reviewed-by: Jack Rosenthal <jrosenth@chromium.org> Commit-Queue: Brian Norris <briannorris@chromium.org> Tested-by: Brian Norris <briannorris@chromium.org>
-rw-r--r--driver/battery/bq27541.c5
-rw-r--r--driver/battery/bq27621_g1.c5
-rw-r--r--driver/battery/max17055.c5
-rw-r--r--include/battery.h10
4 files changed, 25 insertions, 0 deletions
diff --git a/driver/battery/bq27541.c b/driver/battery/bq27541.c
index 760a367b9c..c76cfacda1 100644
--- a/driver/battery/bq27541.c
+++ b/driver/battery/bq27541.c
@@ -176,6 +176,11 @@ int battery_serial_number(int *serial)
return EC_SUCCESS;
}
+int battery_manufacture_date(int *year, int *month, int *day)
+{
+ return EC_ERROR_UNIMPLEMENTED;
+}
+
int battery_design_voltage(int *voltage)
{
*voltage = battery_get_info()->voltage_normal;
diff --git a/driver/battery/bq27621_g1.c b/driver/battery/bq27621_g1.c
index c55d452c87..cbd910b817 100644
--- a/driver/battery/bq27621_g1.c
+++ b/driver/battery/bq27621_g1.c
@@ -502,6 +502,11 @@ int battery_serial_number(int *serial)
return EC_ERROR_UNIMPLEMENTED;
}
+int battery_manufacture_date(int *year, int *month, int *day)
+{
+ return EC_ERROR_UNIMPLEMENTED;
+}
+
int battery_design_voltage(int *voltage)
{
*voltage = BATTERY_VOLTAGE_NORMAL;
diff --git a/driver/battery/max17055.c b/driver/battery/max17055.c
index db8b798a3b..c65bbc8978 100644
--- a/driver/battery/max17055.c
+++ b/driver/battery/max17055.c
@@ -189,6 +189,11 @@ int battery_serial_number(int *serial)
return EC_SUCCESS;
}
+int battery_manufacture_date(int *year, int *month, int *day)
+{
+ return EC_ERROR_UNIMPLEMENTED;
+}
+
int battery_design_voltage(int *voltage)
{
*voltage = battery_get_info()->voltage_normal;
diff --git a/include/battery.h b/include/battery.h
index b783432ded..ccf61f4ec0 100644
--- a/include/battery.h
+++ b/include/battery.h
@@ -282,6 +282,16 @@ int battery_status(int *status);
int battery_cycle_count(int *count);
/**
+ * Read battery manufacture date.
+ *
+ * @param year Destination for year
+ * @param month Destination for month
+ * @param day Destination for day
+ * @return non-zero if error.
+ */
+int battery_manufacture_date(int *year, int *month, int *day);
+
+/**
* Read battery serial number.
*
* @param serial Destination for serial number.