Re: [PATCH] Add CHARGE_NOW support to cw2015_battery.c

From: Tobias Schramm
Date: Tue Feb 16 2021 - 10:09:17 EST


Hi Martin,

thanks for the patch. Looks good and tests fine.

CHARGE_NOW is expected by some user software (such as waybar)
instead of 'CAPACITY', in order to correctly calculate
remaining battery life.

---
drivers/power/supply/cw2015_battery.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/power/supply/cw2015_battery.c b/drivers/power/supply/cw2015_battery.c
index 0146f1bfc..d11059774 100644
--- a/drivers/power/supply/cw2015_battery.c
+++ b/drivers/power/supply/cw2015_battery.c
@@ -511,6 +511,11 @@ static int cw_battery_get_property(struct power_supply *psy,
val->intval = 0;
break;
+ case POWER_SUPPLY_PROP_CHARGE_NOW:
+ val->intval = cw_bat->battery.charge_full_design_uah;
+ val->intval = val->intval * cw_bat->soc / 100;
+ break;
+
case POWER_SUPPLY_PROP_CURRENT_NOW:
if (cw_battery_valid_time_to_empty(cw_bat) &&
cw_bat->battery.charge_full_design_uah > 0) {
@@ -542,6 +547,7 @@ static enum power_supply_property cw_battery_properties[] = {
POWER_SUPPLY_PROP_CHARGE_COUNTER,
POWER_SUPPLY_PROP_CHARGE_FULL,
POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN,
+ POWER_SUPPLY_PROP_CHARGE_NOW,
POWER_SUPPLY_PROP_CURRENT_NOW,
};


Reviewed-by: Tobias Schramm <t.schramm@xxxxxxxxxxx>
Tested-by: Tobias Schramm <t.schramm@xxxxxxxxxxx>