--- /dev/null
+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
+