summaryrefslogtreecommitdiff
path: root/common/charge_manager.c
diff options
context:
space:
mode:
authorAlec Berg <alecaberg@chromium.org>2015-11-03 18:26:26 -0800
committerchrome-bot <chrome-bot@chromium.org>2015-11-09 12:49:30 -0800
commit75f740fa231703b7000fdfbee8f7225214c1a7ff (patch)
tree9a7053d0bab3b07c698e0fb93633ed17d4bc240d /common/charge_manager.c
parent92a65427d3881f3d2ec64b1ab540fb5a4aa0ce93 (diff)
downloadchrome-ec-75f740fa231703b7000fdfbee8f7225214c1a7ff.tar.gz
glados: isl9237: add HW charge ramping
Add HW charge ramping option and enable on glados. Modify charge_manager to enable/disable HW charge ramping when option is defined. Unfortunately, the isl9237 doesn't have a way to determine what the input current limit has settled on, so the EC will always report the max input current for that supplier. BUG=chrome-os-partner:47335 BRANCH=none TEST=plug in CDP, SDP, DCP, type-C, and PD charger. Make sure we ramp to a reasonable value for the correct suppliers. Make sure we don't ramp for type-C and PD chargers. Change-Id: Ib541fa0be48d8f4d261c71b853b0ee72b2adbf6b Signed-off-by: Alec Berg <alecaberg@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/311301 Reviewed-by: Shawn N <shawnn@chromium.org>
Diffstat (limited to 'common/charge_manager.c')
-rw-r--r--common/charge_manager.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/common/charge_manager.c b/common/charge_manager.c
index 2dec5210b6..392cd74040 100644
--- a/common/charge_manager.c
+++ b/common/charge_manager.c
@@ -7,6 +7,7 @@
#include "battery.h"
#include "charge_manager.h"
#include "charge_ramp.h"
+#include "charger.h"
#include "console.h"
#include "gpio.h"
#include "hooks.h"
@@ -511,6 +512,10 @@ static void charge_manager_refresh(void)
new_port, new_supplier, new_charge_current,
registration_time[new_port]);
#else
+#ifdef CONFIG_CHARGE_RAMP_HW
+ /* Enable or disable charge ramp */
+ charger_set_hw_ramp(board_is_ramp_allowed(new_supplier));
+#endif
board_set_charge_limit(new_charge_current);
#endif
CPRINTS("CL: p%d s%d i%d v%d", new_port, new_supplier,