summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChromeOS Developer <dparker@chromium.org>2014-03-11 17:33:33 -0700
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2014-03-12 01:34:33 +0000
commit3b41167f35851743944cbadcc61dcba132c4bf9f (patch)
tree2807c43574fb6c81a46e736702c1f4bb083a3e9e
parenta285a9cd48d2daaf9ae735d62444b3e4266b5a97 (diff)
downloadchrome-ec-3b41167f35851743944cbadcc61dcba132c4bf9f.tar.gz
Add function to check if battery is responding
BUG=None BRANCH=ToT TEST=None. Requires subsequent change. Change-Id: I766974467363a56f484b29852feeff64f85f9922 Signed-off-by: Dave Parker <dparker@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/189630 Reviewed-by: Alec Berg <alecaberg@chromium.org>
-rw-r--r--common/charge_state.c7
-rw-r--r--include/charge_state.h8
2 files changed, 15 insertions, 0 deletions
diff --git a/common/charge_state.c b/common/charge_state.c
index 53c1dda5d2..ea1ef7ce0a 100644
--- a/common/charge_state.c
+++ b/common/charge_state.c
@@ -642,6 +642,13 @@ static void charging_progress(struct charge_state_context *ctx)
}
}
+int charge_battery_responsive(void)
+{
+ const struct batt_params *batt = &task_ctx.curr.batt;
+
+ return ((batt->flags & BATT_FLAG_RESPONSIVE) != 0);
+}
+
enum charge_state charge_get_state(void)
{
return task_ctx.curr.state;
diff --git a/include/charge_state.h b/include/charge_state.h
index 152e767295..b8b822f07a 100644
--- a/include/charge_state.h
+++ b/include/charge_state.h
@@ -121,6 +121,14 @@ struct charge_state_context {
};
/**
+ * Returns whether the battery is responsive.
+ * Battery will not respond if not connected or deeply discharged.
+ *
+ * @return 1 if battery is responsive; 0 otherwise.
+ */
+int charge_battery_responsive(void);
+
+/**
* Return current charge state.
*/
enum charge_state charge_get_state(void);