lkml.org 
[lkml]   [2011]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 11/14] POWER: bq27x00: Give more specific reports on battery status
    On Sun, Feb 06, 2011 at 01:48:08AM +0100, Lars-Peter Clausen wrote:
    > The current code only reports whether the battery is charging or discharging.
    > But the battery also reports whether it is fully charged, furthermore by look at
    > if the battery is supplied we can tell whether it is discharging or not
    > charging.
    >
    > Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
    > ---
    > drivers/power/bq27x00_battery.c | 7 ++++++-
    > 1 files changed, 6 insertions(+), 1 deletions(-)
    >
    > diff --git a/drivers/power/bq27x00_battery.c b/drivers/power/bq27x00_battery.c
    > index 7540364..961238f 100644
    > --- a/drivers/power/bq27x00_battery.c
    > +++ b/drivers/power/bq27x00_battery.c
    > @@ -54,6 +54,7 @@
    > #define BQ27000_REG_RSOC 0x0B /* Relative State-of-Charge */
    > #define BQ27000_REG_ILMD 0x76 /* Initial last measured discharge */
    > #define BQ27000_FLAG_CHGS BIT(7)
    > +#define BQ27000_FLAG_FC BIT(5)
    >
    > #define BQ27500_REG_SOC 0x2c
    > #define BQ27500_REG_DCAP 0x3C /* Design capacity */
    > @@ -395,8 +396,12 @@ static int bq27x00_battery_status(struct bq27x00_device_info *di,
    > else
    > status = POWER_SUPPLY_STATUS_CHARGING;
    > } else {
    > - if (di->cache.flags & BQ27000_FLAG_CHGS)
    > + if (di->cache.flags & BQ27000_FLAG_FC)
    > + status = POWER_SUPPLY_STATUS_FULL;
    > + else if (di->cache.flags & BQ27000_FLAG_CHGS)
    > status = POWER_SUPPLY_STATUS_CHARGING;
    > + else if (power_supply_am_i_supplied(&di->bat))
    > + status = POWER_SUPPLY_STATUS_NOT_CHARGING;
    > else
    > status = POWER_SUPPLY_STATUS_DISCHARGING;
    > }
    > --
    > 1.7.2.3
    >

    Acked-by: Rodolfo Giometti <giometti@linux.it>

    --

    GNU/Linux Solutions e-mail: giometti@enneenne.com
    Linux Device Driver giometti@linux.it
    Embedded Systems phone: +39 349 2432127
    UNIX programming skype: rodolfo.giometti
    Freelance ICT Italia - Consulente ICT Italia - www.consulenti-ict.it


    \
     
     \ /
      Last update: 2011-02-06 17:41    [W:0.035 / U:0.176 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site