bq27x00_battery: Fix bugs introduced with BQ27425 support
authorNeilBrown <neilb@suse.de>
Sun, 2 Dec 2012 09:34:21 +0000 (20:34 +1100)
committerAnton Vorontsov <anton@enomsg.org>
Sun, 6 Jan 2013 02:53:28 +0000 (18:53 -0800)
commit a66f59ba2e994bf70274ef0513e24e0e7ae20c63

    bq27x00_battery: Add support for BQ27425 chip

introduced 2 bugs.

1/ 'chip' was set to BQ27425 unconditionally - breaking support for
   other devices;

2/ BQ27425 does not support cycle count, how the code still tries to
   get the cycle count for BQ27425, and now does it twice for other chips.

Signed-off-by: NeilBrown <neilb@suse.de>
Cc: Saranya Gopal <saranya.gopal@intel.com>
Cc: stable@vger.kernel.org
Signed-off-by: Anton Vorontsov <anton@enomsg.org>
drivers/power/bq27x00_battery.c

index 36b34efdafc9fda1d8cc96773031f5b106f005f9..7087d0d6a087bbb359535f076f5cf4649760202b 100644 (file)
@@ -448,7 +448,6 @@ static void bq27x00_update(struct bq27x00_device_info *di)
                cache.temperature = bq27x00_battery_read_temperature(di);
                if (!is_bq27425)
                        cache.cycle_count = bq27x00_battery_read_cyct(di);
-               cache.cycle_count = bq27x00_battery_read_cyct(di);
                cache.power_avg =
                        bq27x00_battery_read_pwr_avg(di, BQ27x00_POWER_AVG);
 
@@ -696,7 +695,6 @@ static int bq27x00_powersupply_init(struct bq27x00_device_info *di)
        int ret;
 
        di->bat.type = POWER_SUPPLY_TYPE_BATTERY;
-       di->chip = BQ27425;
        if (di->chip == BQ27425) {
                di->bat.properties = bq27425_battery_props;
                di->bat.num_properties = ARRAY_SIZE(bq27425_battery_props);