summaryrefslogtreecommitdiff
path: root/board/wheatley
diff options
context:
space:
mode:
authorVijay Hiremath <vijay.p.hiremath@intel.com>2016-11-14 17:38:05 -0800
committerchrome-bot <chrome-bot@chromium.org>2016-12-05 16:43:00 -0800
commitf66113247a7fb0f8fcc015a50b85137d1ab044a1 (patch)
tree43baa437d00b7bf326301f2689b4222a2e36b273 /board/wheatley
parent64414f92b30d3d75d0ba29fd8b32f772a16acdff (diff)
downloadchrome-ec-f66113247a7fb0f8fcc015a50b85137d1ab044a1.tar.gz
charge_state_v2: Limit i/p current to meet allowed MAX i/p system power
If battery is not present, input current is set to PD_MAX_CURRENT_MA. If the input power set is greater than the maximum allowed system power, system might get damaged. Hence, limit the input current to meet maximum allowed input system power. BUG=chrome-os-partner:58498 BRANCH=none TEST=Manually tested on Reef. Removed the battery & using 'charger' console command observed the following. With Zinger charger at 20V - Input current is set to 2.25A With Type-C & other chargers - Input current is set to 3A Change-Id: Ife8686f322e095aa74b740a7c469bfe87107fb9a Signed-off-by: Vijay Hiremath <vijay.p.hiremath@intel.com> Reviewed-on: https://chromium-review.googlesource.com/397865 Commit-Ready: Vijay P Hiremath <vijay.p.hiremath@intel.com> Tested-by: Vijay P Hiremath <vijay.p.hiremath@intel.com> Reviewed-by: Shawn N <shawnn@chromium.org>
Diffstat (limited to 'board/wheatley')
-rw-r--r--board/wheatley/board.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/board/wheatley/board.c b/board/wheatley/board.c
index deac227365..c467d4dd89 100644
--- a/board/wheatley/board.c
+++ b/board/wheatley/board.c
@@ -300,11 +300,13 @@ int board_set_active_charge_port(int charge_port)
* @param port Port number.
* @param supplier Charge supplier type.
* @param charge_ma Desired charge limit (mA).
+ * @param charge_mv Negotiated charge voltage (mV).
*/
-void board_set_charge_limit(int port, int supplier, int charge_ma, int max_ma)
+void board_set_charge_limit(int port, int supplier, int charge_ma,
+ int max_ma, int charge_mv)
{
charge_set_input_current_limit(MAX(charge_ma,
- CONFIG_CHARGER_INPUT_CURRENT));
+ CONFIG_CHARGER_INPUT_CURRENT), charge_mv);
}
/* Enable or disable input devices, based upon chipset state and tablet mode */