aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/power/da9052-battery.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/power/da9052-battery.c')
-rw-r--r--drivers/power/da9052-battery.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/power/da9052-battery.c b/drivers/power/da9052-battery.c
index a5f6a0ec1572..d9d034d7496f 100644
--- a/drivers/power/da9052-battery.c
+++ b/drivers/power/da9052-battery.c
@@ -327,7 +327,7 @@ static int da9052_bat_interpolate(int vbat_lower, int vbat_upper,
327 return tmp; 327 return tmp;
328} 328}
329 329
330unsigned char da9052_determine_vc_tbl_index(unsigned char adc_temp) 330static unsigned char da9052_determine_vc_tbl_index(unsigned char adc_temp)
331{ 331{
332 int i; 332 int i;
333 333
@@ -345,6 +345,13 @@ unsigned char da9052_determine_vc_tbl_index(unsigned char adc_temp)
345 && (adc_temp <= vc_tbl_ref[i])) 345 && (adc_temp <= vc_tbl_ref[i]))
346 return i + 1; 346 return i + 1;
347 } 347 }
348 /*
349 * For some reason authors of the driver didn't presume that we can
350 * end up here. It might be OK, but might be not, no one knows for
351 * sure. Go check your battery, is it on fire?
352 */
353 WARN_ON(1);
354 return 0;
348} 355}
349 356
350static int da9052_bat_read_capacity(struct da9052_battery *bat, int *capacity) 357static int da9052_bat_read_capacity(struct da9052_battery *bat, int *capacity)
@@ -616,7 +623,7 @@ static s32 __devinit da9052_bat_probe(struct platform_device *pdev)
616 return 0; 623 return 0;
617 624
618err: 625err:
619 for (; i >= 0; i--) { 626 while (--i >= 0) {
620 irq = platform_get_irq_byname(pdev, da9052_bat_irqs[i]); 627 irq = platform_get_irq_byname(pdev, da9052_bat_irqs[i]);
621 free_irq(bat->da9052->irq_base + irq, bat); 628 free_irq(bat->da9052->irq_base + irq, bat);
622 } 629 }