From: Pali Rohár Date: Sat, 10 Nov 2012 14:26:30 +0000 (+0100) Subject: bq27x00_battery: Do not report nominal available capaciy if battery is not calibrated X-Git-Tag: v52~10 X-Git-Url: http://vcs.maemo.org/git/?p=kernel-power;a=commitdiff_plain;h=e2b9ebc1e2b2ca7750de0ad62cb201530b0db328 bq27x00_battery: Do not report nominal available capaciy if battery is not calibrated --- diff --git a/kernel-power-2.6.28/debian/patches/bq27x00-fix-nac.diff b/kernel-power-2.6.28/debian/patches/bq27x00-fix-nac.diff new file mode 100644 index 0000000..8a6eb9f --- /dev/null +++ b/kernel-power-2.6.28/debian/patches/bq27x00-fix-nac.diff @@ -0,0 +1,21 @@ +diff --git a/drivers/power/bq27x00_battery.c b/drivers/power/bq27x00_battery.c +index 5860d4d..41b3328 100644 +--- a/drivers/power/bq27x00_battery.c ++++ b/drivers/power/bq27x00_battery.c +@@ -230,6 +230,13 @@ static int bq27x00_battery_read_charge(struct bq27x00_device_info *di, u8 reg) + */ + static inline int bq27x00_battery_read_nac(struct bq27x00_device_info *di) + { ++ int flags; ++ bool is_bq27500 = di->chip == BQ27500; ++ ++ flags = bq27x00_read(di, BQ27x00_REG_FLAGS, !is_bq27500); ++ if (flags >= 0 && !is_bq27500 && (flags & BQ27000_FLAG_CI)) ++ return -ENODATA; ++ + return bq27x00_battery_read_charge(di, BQ27x00_REG_NAC); + } + +-- +1.7.10.4 + diff --git a/kernel-power-2.6.28/debian/patches/series b/kernel-power-2.6.28/debian/patches/series index 5aed59d..8fffb38 100644 --- a/kernel-power-2.6.28/debian/patches/series +++ b/kernel-power-2.6.28/debian/patches/series @@ -44,6 +44,7 @@ power-supply-ignore-enodata.diff power-supply-no-verbose.diff bq27x00-rx51-board.diff bq27x00-upstream.diff +bq27x00-fix-nac.diff bq27x00-maemo.diff bq27x00-sysfs-registers.diff l2cap_parent.diff