summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShawn Nematbakhsh <shawnn@chromium.org>2015-02-26 14:31:16 -0800
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2015-02-27 02:21:25 +0000
commitc7bc5965faa2c0c8cc267acc75e784c345dbe8dc (patch)
tree031d5ff1295cf977e5d432a9442f5d9294d3c29e
parent3ff0be248c0d3b36dccd47599fd311f2204389af (diff)
downloadchrome-ec-c7bc5965faa2c0c8cc267acc75e784c345dbe8dc.tar.gz
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>
-rw-r--r--common/charge_manager.c3
-rw-r--r--include/ec_commands.h3
-rw-r--r--util/ectool.c3
3 files changed, 8 insertions, 1 deletions
diff --git a/common/charge_manager.c b/common/charge_manager.c
index b464c8b332..83b0582ddd 100644
--- a/common/charge_manager.c
+++ b/common/charge_manager.c
@@ -183,6 +183,9 @@ static void charge_manager_fill_power_info(int port,
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 c03a55af77..33e880b38e 100644
--- a/include/ec_commands.h
+++ b/include/ec_commands.h
@@ -2780,7 +2780,8 @@ enum usb_chg_type {
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 ed4787706f..cd308008b4 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -3203,6 +3203,9 @@ static void print_pd_power_info(struct ec_response_usb_pd_power_info *r)
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);