diff options
Diffstat (limited to 'drivers/power/da9030_battery.c')
| -rw-r--r-- | drivers/power/da9030_battery.c | 27 |
1 files changed, 7 insertions, 20 deletions
diff --git a/drivers/power/da9030_battery.c b/drivers/power/da9030_battery.c index 3364198134a..ae6c41835ee 100644 --- a/drivers/power/da9030_battery.c +++ b/drivers/power/da9030_battery.c @@ -10,6 +10,7 @@ */ #include <linux/kernel.h> +#include <linux/slab.h> #include <linux/init.h> #include <linux/types.h> #include <linux/device.h> @@ -21,6 +22,7 @@ #include <linux/debugfs.h> #include <linux/seq_file.h> +#include <linux/notifier.h> #define DA9030_FAULT_LOG 0x0a #define DA9030_FAULT_LOG_OVER_TEMP (1 << 7) @@ -186,8 +188,8 @@ static const struct file_operations bat_debug_fops = { static struct dentry *da9030_bat_create_debugfs(struct da9030_charger *charger) { - charger->debug_file = debugfs_create_file("charger", 0666, 0, charger, - &bat_debug_fops); + charger->debug_file = debugfs_create_file("charger", 0666, NULL, + charger, &bat_debug_fops); return charger->debug_file; } @@ -503,13 +505,13 @@ static int da9030_battery_probe(struct platform_device *pdev) pdata->charge_millivolt > 4350) return -EINVAL; - charger = kzalloc(sizeof(*charger), GFP_KERNEL); + charger = devm_kzalloc(&pdev->dev, sizeof(*charger), GFP_KERNEL); if (charger == NULL) return -ENOMEM; charger->master = pdev->dev.parent; - /* 10 seconds between monotor runs unless platfrom defines other + /* 10 seconds between monitor runs unless platform defines other interval */ charger->interval = msecs_to_jiffies( (pdata->batmon_interval ? : 10) * 1000); @@ -555,8 +557,6 @@ err_notifier: cancel_delayed_work(&charger->work); err_charger_init: - kfree(charger); - return ret; } @@ -573,8 +573,6 @@ static int da9030_battery_remove(struct platform_device *dev) da9030_set_charge(charger, 0); power_supply_unregister(&charger->psy); - kfree(charger); - return 0; } @@ -587,18 +585,7 @@ static struct platform_driver da903x_battery_driver = { .remove = da9030_battery_remove, }; -static int da903x_battery_init(void) -{ - return platform_driver_register(&da903x_battery_driver); -} - -static void da903x_battery_exit(void) -{ - platform_driver_unregister(&da903x_battery_driver); -} - -module_init(da903x_battery_init); -module_exit(da903x_battery_exit); +module_platform_driver(da903x_battery_driver); MODULE_DESCRIPTION("DA9030 battery charger driver"); MODULE_AUTHOR("Mike Rapoport, CompuLab"); |
