The BQ20Z75 will return a negative value for current if the battery is
discharging and a positive value if charging. This should always be
exported
as a positive number.
Signed-off-by: Rhyland Klein <[email protected]>
---
drivers/power/bq20z75.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/drivers/power/bq20z75.c b/drivers/power/bq20z75.c
index 492da27..a039ea0 100644
--- a/drivers/power/bq20z75.c
+++ b/drivers/power/bq20z75.c
@@ -220,6 +220,10 @@ static int bq20z75_get_battery_property(struct
i2c_client *client,
if (bq20z75_data[reg_offset].min_value < 0)
ret = (s16)ret;
+ /* for current, it shoud be always positive */
+ if (psp == POWER_SUPPLY_PROP_CURRENT_NOW)
+ ret = abs(ret);
+
if (ret >= bq20z75_data[reg_offset].min_value &&
ret <= bq20z75_data[reg_offset].max_value) {
val->intval = ret;
On Tue, Dec 14, 2010 at 05:01:25PM -0800, rklein wrote:
> The BQ20Z75 will return a negative value for current if the battery is
> discharging and a positive value if charging. This should always be
> exported
> as a positive number.
>
> Signed-off-by: Rhyland Klein <[email protected]>
Reviewed-by: Olof Johansson <[email protected]>
-Olof
On Mon, Dec 20, 2010 at 04:54:22PM -0800, rklein wrote:
> On Tue, 2010-12-14 at 19:04 -0800, Olof Johansson wrote:
> > On Tue, Dec 14, 2010 at 05:01:25PM -0800, rklein wrote:
> > > The BQ20Z75 will return a negative value for current if the battery is
> > > discharging and a positive value if charging. This should always be
> > > exported
> > > as a positive number.
> > >
> > > Signed-off-by: Rhyland Klein <[email protected]>
> >
> > Reviewed-by: Olof Johansson <[email protected]>
> >
> > -Olof
>
> Anton, is this patch ok to get put in?
I'm not sure. Probably not. Why would you think that the current
should always be positive? For ds2760 it isn't, for example.
If some driver assumes always positive current, I think it should
be fixed instead.
If the battery is discharging, let it be negative. That's what
happens on wires anyway. :-)
--
Anton Vorontsov
Email: [email protected]
On Tue, 2010-12-21 at 15:22 -0800, Anton Vorontsov wrote:
> On Mon, Dec 20, 2010 at 04:54:22PM -0800, rklein wrote:
> > On Tue, 2010-12-14 at 19:04 -0800, Olof Johansson wrote:
> > > On Tue, Dec 14, 2010 at 05:01:25PM -0800, rklein wrote:
> > > > The BQ20Z75 will return a negative value for current if the battery is
> > > > discharging and a positive value if charging. This should always be
> > > > exported
> > > > as a positive number.
> > > >
> > > > Signed-off-by: Rhyland Klein <[email protected]>
> > >
> > > Reviewed-by: Olof Johansson <[email protected]>
> > >
> > > -Olof
> >
> > Anton, is this patch ok to get put in?
>
> I'm not sure. Probably not. Why would you think that the current
> should always be positive? For ds2760 it isn't, for example.
> If some driver assumes always positive current, I think it should
> be fixed instead.
>
> If the battery is discharging, let it be negative. That's what
> happens on wires anyway. :-)
>
That makes sense to me, I will propose the change to the sw that was
expecting the positive value.
-rhyland