diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2019-01-07 12:51:34 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-01-26 06:51:13 -0800 |
commit | 7a1d8d0f39d70040de35bc27cc5b43b69fe64d58 (patch) | |
tree | e2cdb22e1fc9ace187f5362aeb08a9bb9b20ae42 /common | |
parent | 9cb1b936e76809cb68419c3ff3612e17fec81e9c (diff) | |
download | chrome-ec-7a1d8d0f39d70040de35bc27cc5b43b69fe64d58.tar.gz |
BC1.2: Add usb_charger_reset_charge API
This patch adds the sub_charger_reset_charge API, which resets the
voltage and the current for all BC 1.2 supplies.
This reduces code duplication. There is no functionality changes.
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
BUG=none
BRANCH=none
TEST=buildall
Change-Id: I21afaff9a3c66b1a81ab5c907e6cdd1f1b3896a0
Reviewed-on: https://chromium-review.googlesource.com/1399204
Commit-Ready: Daisuke Nojiri <dnojiri@chromium.org>
Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Jett Rink <jettrink@chromium.org>
Diffstat (limited to 'common')
-rw-r--r-- | common/usb_charger.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/common/usb_charger.c b/common/usb_charger.c index 361d019a52..eac48964df 100644 --- a/common/usb_charger.c +++ b/common/usb_charger.c @@ -81,22 +81,25 @@ void usb_charger_vbus_change(int port, int vbus_level) #endif } +void usb_charger_reset_charge(int port) +{ + charge_manager_update_charge(CHARGE_SUPPLIER_PROPRIETARY, + port, NULL); + charge_manager_update_charge(CHARGE_SUPPLIER_BC12_CDP, + port, NULL); + charge_manager_update_charge(CHARGE_SUPPLIER_BC12_DCP, + port, NULL); + charge_manager_update_charge(CHARGE_SUPPLIER_BC12_SDP, + port, NULL); + charge_manager_update_charge(CHARGE_SUPPLIER_OTHER, + port, NULL); +} + static void usb_charger_init(void) { int i; - - /* Initialize all charge suppliers */ for (i = 0; i < CONFIG_USB_PD_PORT_COUNT; i++) { - charge_manager_update_charge(CHARGE_SUPPLIER_PROPRIETARY, - i, NULL); - charge_manager_update_charge(CHARGE_SUPPLIER_BC12_CDP, - i, NULL); - charge_manager_update_charge(CHARGE_SUPPLIER_BC12_DCP, - i, NULL); - charge_manager_update_charge(CHARGE_SUPPLIER_BC12_SDP, - i, NULL); - charge_manager_update_charge(CHARGE_SUPPLIER_OTHER, - i, NULL); + usb_charger_reset_charge(i); /* Initialize VBUS supplier based on whether VBUS is present. */ update_vbus_supplier(i, pd_is_vbus_present(i)); } |