Re: [PATCH v2 1/3] power: supply: bq27xxx: fix sign of current_now for newer ICs

From: Sebastian Reichel
Date: Sun Mar 14 2021 - 21:57:18 EST


Hi,

On Wed, Mar 03, 2021 at 10:54:18AM +0100, Matthias Schiffer wrote:
> 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@xxxxxxxxxxxxxxx>
> ---

Thanks, queued.

-- Sebastian

>
> v2: no changes
>
> drivers/power/supply/bq27xxx_battery.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> 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;
> --
> 2.17.1
>

Attachment: signature.asc
Description: PGP signature