X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=drivers%2Facpi%2Fbattery.c;h=9fb9d5ac939db1c071c4cdcaa7fba49364236e25;hb=7ccbefe07ea0a3570e44d1ec13a307552ee4dadd;hp=95649d373071ac93d14bbbb478db1ab4a8cdb801;hpb=f69fa76482e654f7d94e4aa40ea0ebf04363396a;p=deliverable%2Flinux.git diff --git a/drivers/acpi/battery.c b/drivers/acpi/battery.c index 95649d373071..9fb9d5ac939d 100644 --- a/drivers/acpi/battery.c +++ b/drivers/acpi/battery.c @@ -130,6 +130,8 @@ struct acpi_battery { unsigned long flags; }; +static int acpi_battery_update(struct acpi_battery *battery); + #define to_acpi_battery(x) container_of(x, struct acpi_battery, bat); inline int acpi_battery_present(struct acpi_battery *battery) @@ -184,6 +186,9 @@ static int acpi_battery_get_property(struct power_supply *psy, int ret = 0; struct acpi_battery *battery = to_acpi_battery(psy); + if (acpi_battery_update(battery)) + return -ENODEV; + if (acpi_battery_present(battery)) { /* run battery update only if it is present */ acpi_battery_get_state(battery);