diff options
author | Shawn Nematbakhsh <shawnn@chromium.org> | 2017-10-05 08:15:12 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2017-10-05 21:24:46 -0700 |
commit | 286b800f14b139ca5d349d35142d7f31f3655689 (patch) | |
tree | 1dad9a731db2ede5712aea0aac164120a9d6fe00 /common | |
parent | 1e72cc1f5719d5c5df6dbe76a8c86f60a525fe1a (diff) | |
download | chrome-ec-286b800f14b139ca5d349d35142d7f31f3655689.tar.gz |
pd: Move *_set_input_current() to common code
Boards that use charge_manager have identical implementations of
typec_set_input_current_limit() and pd_set_input_current_limit(), so
move these functions to charge_manager.
BUG=b:67413505
TEST=`make buildall -j`, also verify that fizz continues to power-on and
boot AP, in both protected and unprotected mode, with barrel jack power
and with zinger.
BRANCH=None
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Change-Id: I99a5314d02c4696db944c0f8ac689405f4f1f707
Reviewed-on: https://chromium-review.googlesource.com/701412
Commit-Ready: Shawn N <shawnn@chromium.org>
Tested-by: Shawn N <shawnn@chromium.org>
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'common')
-rw-r--r-- | common/charge_manager.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/common/charge_manager.c b/common/charge_manager.c index 71169fe97f..05656c5aa0 100644 --- a/common/charge_manager.c +++ b/common/charge_manager.c @@ -823,6 +823,26 @@ static void charge_manager_make_change(enum charge_manager_change_type change, hook_call_deferred(&charge_manager_refresh_data, 0); } +void pd_set_input_current_limit(int port, uint32_t max_ma, + uint32_t supply_voltage) +{ + struct charge_port_info charge; + + charge.current = max_ma; + charge.voltage = supply_voltage; + charge_manager_update_charge(CHARGE_SUPPLIER_PD, port, &charge); +} + +void typec_set_input_current_limit(int port, uint32_t max_ma, + uint32_t supply_voltage) +{ + struct charge_port_info charge; + + charge.current = max_ma; + charge.voltage = supply_voltage; + charge_manager_update_charge(CHARGE_SUPPLIER_TYPEC, port, &charge); +} + void charge_manager_update_charge(int supplier, int port, struct charge_port_info *charge) |