summaryrefslogtreecommitdiff
path: root/common/usb_charger.c
diff options
context:
space:
mode:
authorDaisuke Nojiri <dnojiri@chromium.org>2019-01-07 12:51:34 -0800
committerchrome-bot <chrome-bot@chromium.org>2019-01-26 06:51:13 -0800
commit7a1d8d0f39d70040de35bc27cc5b43b69fe64d58 (patch)
treee2cdb22e1fc9ace187f5362aeb08a9bb9b20ae42 /common/usb_charger.c
parent9cb1b936e76809cb68419c3ff3612e17fec81e9c (diff)
downloadchrome-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/usb_charger.c')
-rw-r--r--common/usb_charger.c27
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));
}