aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-05-03 13:57:57 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-05-03 13:57:57 -0400
commit38e80121bd7d0c493072442ac7eddcba165a07a8 (patch)
tree66c948222e45b461f9d1b8917b222a0c90af9e6e /drivers/power
parente098675635479e9267cf2b12fb969c463cf506ab (diff)
parent35bf559145b6332f5465c15a4e5cd7a363985382 (diff)
Merge git://git.infradead.org/battery-2.6
* git://git.infradead.org/battery-2.6: PMU battery: filenames in sysfs with spaces pda_power: add init and exit function callbacks
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/pda_power.c11
-rw-r--r--drivers/power/pmu_battery.c2
2 files changed, 12 insertions, 1 deletions
diff --git a/drivers/power/pda_power.c b/drivers/power/pda_power.c
index c8aa55b81fd8..82810b7bff9c 100644
--- a/drivers/power/pda_power.c
+++ b/drivers/power/pda_power.c
@@ -209,6 +209,12 @@ static int pda_power_probe(struct platform_device *pdev)
209 209
210 pdata = pdev->dev.platform_data; 210 pdata = pdev->dev.platform_data;
211 211
212 if (pdata->init) {
213 ret = pdata->init(dev);
214 if (ret < 0)
215 goto init_failed;
216 }
217
212 update_status(); 218 update_status();
213 update_charger(); 219 update_charger();
214 220
@@ -298,6 +304,9 @@ ac_irq_failed:
298 if (pdata->is_ac_online) 304 if (pdata->is_ac_online)
299 power_supply_unregister(&pda_psy_ac); 305 power_supply_unregister(&pda_psy_ac);
300ac_supply_failed: 306ac_supply_failed:
307 if (pdata->exit)
308 pdata->exit(dev);
309init_failed:
301wrongid: 310wrongid:
302 return ret; 311 return ret;
303} 312}
@@ -318,6 +327,8 @@ static int pda_power_remove(struct platform_device *pdev)
318 power_supply_unregister(&pda_psy_usb); 327 power_supply_unregister(&pda_psy_usb);
319 if (pdata->is_ac_online) 328 if (pdata->is_ac_online)
320 power_supply_unregister(&pda_psy_ac); 329 power_supply_unregister(&pda_psy_ac);
330 if (pdata->exit)
331 pdata->exit(dev);
321 332
322 return 0; 333 return 0;
323} 334}
diff --git a/drivers/power/pmu_battery.c b/drivers/power/pmu_battery.c
index 60a8cf3a0431..9346a862f1f2 100644
--- a/drivers/power/pmu_battery.c
+++ b/drivers/power/pmu_battery.c
@@ -159,7 +159,7 @@ static int __init pmu_bat_init(void)
159 if (!pbat) 159 if (!pbat)
160 break; 160 break;
161 161
162 sprintf(pbat->name, "PMU battery %d", i); 162 sprintf(pbat->name, "PMU_battery_%d", i);
163 pbat->bat.name = pbat->name; 163 pbat->bat.name = pbat->name;
164 pbat->bat.properties = pmu_bat_props; 164 pbat->bat.properties = pmu_bat_props;
165 pbat->bat.num_properties = ARRAY_SIZE(pmu_bat_props); 165 pbat->bat.num_properties = ARRAY_SIZE(pmu_bat_props);