aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/regulator/wm8994-regulator.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/regulator/wm8994-regulator.c')
-rw-r--r--drivers/regulator/wm8994-regulator.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/regulator/wm8994-regulator.c b/drivers/regulator/wm8994-regulator.c
index 435e335d6e6..75ed402d9f4 100644
--- a/drivers/regulator/wm8994-regulator.c
+++ b/drivers/regulator/wm8994-regulator.c
@@ -241,7 +241,7 @@ static __devinit int wm8994_ldo_probe(struct platform_device *pdev)
241 if (!pdata) 241 if (!pdata)
242 return -ENODEV; 242 return -ENODEV;
243 243
244 ldo = kzalloc(sizeof(struct wm8994_ldo), GFP_KERNEL); 244 ldo = devm_kzalloc(&pdev->dev, sizeof(struct wm8994_ldo), GFP_KERNEL);
245 if (ldo == NULL) { 245 if (ldo == NULL) {
246 dev_err(&pdev->dev, "Unable to allocate private data\n"); 246 dev_err(&pdev->dev, "Unable to allocate private data\n");
247 return -ENOMEM; 247 return -ENOMEM;
@@ -285,7 +285,6 @@ err_gpio:
285 if (gpio_is_valid(ldo->enable)) 285 if (gpio_is_valid(ldo->enable))
286 gpio_free(ldo->enable); 286 gpio_free(ldo->enable);
287err: 287err:
288 kfree(ldo);
289 return ret; 288 return ret;
290} 289}
291 290
@@ -298,7 +297,6 @@ static __devexit int wm8994_ldo_remove(struct platform_device *pdev)
298 regulator_unregister(ldo->regulator); 297 regulator_unregister(ldo->regulator);
299 if (gpio_is_valid(ldo->enable)) 298 if (gpio_is_valid(ldo->enable))
300 gpio_free(ldo->enable); 299 gpio_free(ldo->enable);
301 kfree(ldo);
302 300
303 return 0; 301 return 0;
304} 302}