summaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorMatthias Schiffer <matthias.schiffer@ew.tq-group.com>2021-03-03 10:54:18 +0100
committerSebastian Reichel <sebastian.reichel@collabora.com>2021-03-15 02:26:03 +0100
commitb67fdcb7099e9c640bad625c4dd6399debb3376a (patch)
tree3cc2afbb86d2eb13c46d76ac8ce5473f1bae0ecd /drivers/power
parentpower: supply: axp20x_usb_power: Add missing check in axp20x_usb_power_probe (diff)
downloadlinux-b67fdcb7099e9c640bad625c4dd6399debb3376a.tar.xz
linux-b67fdcb7099e9c640bad625c4dd6399debb3376a.zip
power: supply: bq27xxx: fix sign of current_now for newer ICs
Commit cd060b4d0868 ("power: supply: bq27xxx: fix polarity of current_now") changed the sign of current_now for all bq27xxx variants, but on BQ28Z610 I'm now seeing negated values *with* that patch. The GTA04/Openmoko device that was used for testing uses a BQ27000 or BQ27010 IC, so I assume only the BQ27XXX_O_ZERO code path was incorrect. Revert the behaviour for newer ICs. Fixes: cd060b4d0868 "power: supply: bq27xxx: fix polarity of current_now" Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com> Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/supply/bq27xxx_battery.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c
index 4c4a7b1c64c5..cb6ebd2f905e 100644
--- a/drivers/power/supply/bq27xxx_battery.c
+++ b/drivers/power/supply/bq27xxx_battery.c
@@ -1827,7 +1827,7 @@ static int bq27xxx_battery_current(struct bq27xxx_device_info *di,
val->intval = curr * BQ27XXX_CURRENT_CONSTANT / BQ27XXX_RS;
} else {
/* Other gauges return signed value */
- val->intval = -(int)((s16)curr) * 1000;
+ val->intval = (int)((s16)curr) * 1000;
}
return 0;