diff options
author | Hans de Goede <hdegoede@redhat.com> | 2017-08-15 22:04:56 +0200 |
---|---|---|
committer | Sebastian Reichel <sebastian.reichel@collabora.co.uk> | 2017-08-29 12:24:52 +0200 |
commit | c3142dd8bedb8b78ee13c885dd92093fc8a50277 (patch) | |
tree | 81a9b0594e82eb018aaa598d4484a6a8aa3a0bcf /include/linux/power_supply.h | |
parent | 4f1e0cb78810afab889fc407ff18c112663a1579 (diff) | |
download | linux-stable-c3142dd8bedb8b78ee13c885dd92093fc8a50277.tar.gz linux-stable-c3142dd8bedb8b78ee13c885dd92093fc8a50277.tar.bz2 linux-stable-c3142dd8bedb8b78ee13c885dd92093fc8a50277.zip |
power: supply: Add power_supply_set_input_current_limit_from_supplier helper
On some devices the USB Type-C port power (USB PD 2.0) negotiation is
done by a separate port-controller IC, while the current limit is
controlled through another (charger) IC.
It has been decided to model this by modelling the external Type-C
power brick (adapter/charger) as a power-supply class device which
supplies the charger-IC, with its voltage-now and current-max representing
the negotiated voltage and max current draw.
This commit adds a power_supply_set_input_current_limit_from_supplier
helper function which charger power-supply drivers can call to get
the max-current from their supplier and have this applied
through their set_property call-back to their input-current-limit.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Diffstat (limited to 'include/linux/power_supply.h')
-rw-r--r-- | include/linux/power_supply.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h index de89066b72b1..79e90b3d3288 100644 --- a/include/linux/power_supply.h +++ b/include/linux/power_supply.h @@ -332,6 +332,8 @@ extern int power_supply_get_battery_info(struct power_supply *psy, struct power_supply_battery_info *info); extern void power_supply_changed(struct power_supply *psy); extern int power_supply_am_i_supplied(struct power_supply *psy); +extern int power_supply_set_input_current_limit_from_supplier( + struct power_supply *psy); extern int power_supply_set_battery_charged(struct power_supply *psy); #ifdef CONFIG_POWER_SUPPLY |