summaryrefslogtreecommitdiff
path: root/common/battery_v2.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/battery_v2.c')
-rw-r--r--common/battery_v2.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/common/battery_v2.c b/common/battery_v2.c
index 57ae07196b..9096cbb72c 100644
--- a/common/battery_v2.c
+++ b/common/battery_v2.c
@@ -129,6 +129,20 @@ host_command_battery_get_static(struct host_cmd_handler_args *args)
r->type_ext[sizeof(r->type_ext) - 1] = 0;
args->response_size = sizeof(*r);
+ } else if (args->version == 2) {
+ struct ec_response_battery_static_info_v2 *r = args->response;
+
+ r->design_capacity = bs->design_capacity;
+ r->design_voltage = bs->design_voltage;
+ r->cycle_count = bs->cycle_count;
+
+ strzcpy(r->manufacturer, bs->manufacturer_ext,
+ sizeof(r->manufacturer));
+ strzcpy(r->device_name, bs->model_ext, sizeof(r->device_name));
+ strzcpy(r->serial, bs->serial_ext, sizeof(r->serial));
+ strzcpy(r->chemistry, bs->type_ext, sizeof(r->chemistry));
+
+ args->response_size = sizeof(*r);
} else {
return EC_RES_INVALID_VERSION;
}
@@ -136,7 +150,7 @@ host_command_battery_get_static(struct host_cmd_handler_args *args)
return EC_RES_SUCCESS;
}
DECLARE_HOST_COMMAND(EC_CMD_BATTERY_GET_STATIC, host_command_battery_get_static,
- EC_VER_MASK(0) | EC_VER_MASK(1));
+ EC_VER_MASK(0) | EC_VER_MASK(1) | EC_VER_MASK(2));
static enum ec_status
host_command_battery_get_dynamic(struct host_cmd_handler_args *args)