aboutsummaryrefslogtreecommitdiff
path: root/drivers/power/z2_battery.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/power/z2_battery.c')
-rw-r--r--drivers/power/z2_battery.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/power/z2_battery.c b/drivers/power/z2_battery.c
index 85064a9f649..e5ed52d7193 100644
--- a/drivers/power/z2_battery.c
+++ b/drivers/power/z2_battery.c
@@ -254,7 +254,7 @@ static int __devexit z2_batt_remove(struct i2c_client *client)
struct z2_charger *charger = i2c_get_clientdata(client);
struct z2_battery_info *info = charger->info;
- flush_scheduled_work();
+ cancel_work_sync(&charger->bat_work);
power_supply_unregister(&charger->batt_ps);
kfree(charger->batt_ps.properties);
@@ -271,7 +271,9 @@ static int __devexit z2_batt_remove(struct i2c_client *client)
#ifdef CONFIG_PM
static int z2_batt_suspend(struct i2c_client *client, pm_message_t state)
{
- flush_scheduled_work();
+ struct z2_charger *charger = i2c_get_clientdata(client);
+
+ flush_work_sync(&charger->bat_work);
return 0;
}