diff options
| author | Hans de Goede <hdegoede@redhat.com> | 2017-08-15 16:04:56 -0400 |
|---|---|---|
| committer | Sebastian Reichel <sebastian.reichel@collabora.co.uk> | 2017-08-29 06:24:52 -0400 |
| commit | c3142dd8bedb8b78ee13c885dd92093fc8a50277 (patch) | |
| tree | 81a9b0594e82eb018aaa598d4484a6a8aa3a0bcf /include/linux/power_supply.h | |
| parent | 4f1e0cb78810afab889fc407ff18c112663a1579 (diff) | |
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, | |||
| 332 | struct power_supply_battery_info *info); | 332 | struct power_supply_battery_info *info); |
| 333 | extern void power_supply_changed(struct power_supply *psy); | 333 | extern void power_supply_changed(struct power_supply *psy); |
| 334 | extern int power_supply_am_i_supplied(struct power_supply *psy); | 334 | extern int power_supply_am_i_supplied(struct power_supply *psy); |
| 335 | extern int power_supply_set_input_current_limit_from_supplier( | ||
| 336 | struct power_supply *psy); | ||
| 335 | extern int power_supply_set_battery_charged(struct power_supply *psy); | 337 | extern int power_supply_set_battery_charged(struct power_supply *psy); |
| 336 | 338 | ||
| 337 | #ifdef CONFIG_POWER_SUPPLY | 339 | #ifdef CONFIG_POWER_SUPPLY |
