aboutsummaryrefslogtreecommitdiff
path: root/drivers/acpi
diff options
context:
space:
mode:
authorLen Brown2009-01-09 03:36:59 -0500
committerLen Brown2009-01-09 03:36:59 -0500
commita8e896e2813316a2d3657dc07d5eef83c3b2d9f4 (patch)
treeb1151588bb4b355fe6956348435f2adb409aa3f2 /drivers/acpi
parent39cecf2091f10c3a5052d1e58da690d20852b243 (diff)
parent50b178512b7d6e7724f87459f6bd06504c9c2da1 (diff)
Merge branch 'battery' into release
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/battery.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c
index 1423b0c0cd2e..65132f920459 100644
--- a/drivers/acpi/battery.c
+++ b/drivers/acpi/battery.c
@@ -471,7 +471,7 @@ static void sysfs_remove_battery(struct acpi_battery *battery)
static int acpi_battery_update(struct acpi_battery *battery)
{
- int result;
+ int result, old_present = acpi_battery_present(battery);
result = acpi_battery_get_status(battery);
if (result)
return result;
@@ -482,7 +482,8 @@ static int acpi_battery_update(struct acpi_battery *battery)
return 0;
}
#endif
- if (!battery->update_time) {
+ if (!battery->update_time ||
+ old_present != acpi_battery_present(battery)) {
result = acpi_battery_get_info(battery);
if (result)
return result;