charge_manager: Classify VBUS supplier type
Add a new supplier type for VBUS chargers (USB chargers which supply VBUS
but are not identified as another charger type).
BUG=chrome-os-partner:37168
TEST=Manual on Samus with subsequent kernel commit. Modify code to
reject all non-VBUS suppliers, charge with SDP port, and verify charge
icon appears in OS.
BRANCH=Samus
Signed-off-by: Shawn Nematbakhsh <shawnn@chromium.org>
Change-Id: I5fbdb1cb57bd0224b01aaf5a763f93b678b6d204
Reviewed-on: https://chromium-review.googlesource.com/254346
Reviewed-by: Alec Berg <alecaberg@chromium.org>
diff --git a/common/charge_manager.c b/common/charge_manager.c
index b464c8b..83b0582d 100644
--- a/common/charge_manager.c
+++ b/common/charge_manager.c
@@ -183,6 +183,9 @@
case CHARGE_SUPPLIER_BC12_SDP:
r->type = USB_CHG_TYPE_BC12_SDP;
break;
+ case CHARGE_SUPPLIER_VBUS:
+ r->type = USB_CHG_TYPE_VBUS;
+ break;
default:
r->type = USB_CHG_TYPE_OTHER;
}
diff --git a/include/ec_commands.h b/include/ec_commands.h
index c03a55a..33e880b 100644
--- a/include/ec_commands.h
+++ b/include/ec_commands.h
@@ -2780,7 +2780,8 @@
USB_CHG_TYPE_BC12_DCP,
USB_CHG_TYPE_BC12_CDP,
USB_CHG_TYPE_BC12_SDP,
- USB_CHG_TYPE_OTHER
+ USB_CHG_TYPE_OTHER,
+ USB_CHG_TYPE_VBUS,
};
enum usb_power_roles {
USB_PD_PORT_POWER_DISCONNECTED,
diff --git a/util/ectool.c b/util/ectool.c
index ed47877..cd30800 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -3203,6 +3203,9 @@
case USB_CHG_TYPE_OTHER:
printf(" Other");
break;
+ case USB_CHG_TYPE_VBUS:
+ printf(" VBUS");
+ break;
}
printf(" %dmV max %dmV / %dmA",
r->meas.voltage_now, r->meas.voltage_max, r->meas.current_max);