]> Pileus Git - ~andy/linux/blobdiff - drivers/power/gpio-charger.c
Merge tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel...
[~andy/linux] / drivers / power / gpio-charger.c
index e3e40a9f3af2a962e39a4f4687359e348bc87d11..4e858a23568fa95d0b44c9c6f1f3250455c2f032 100644 (file)
@@ -86,7 +86,8 @@ static int gpio_charger_probe(struct platform_device *pdev)
                return -EINVAL;
        }
 
-       gpio_charger = kzalloc(sizeof(*gpio_charger), GFP_KERNEL);
+       gpio_charger = devm_kzalloc(&pdev->dev, sizeof(*gpio_charger),
+                                       GFP_KERNEL);
        if (!gpio_charger) {
                dev_err(&pdev->dev, "Failed to alloc driver structure\n");
                return -ENOMEM;
@@ -140,7 +141,6 @@ static int gpio_charger_probe(struct platform_device *pdev)
 err_gpio_free:
        gpio_free(pdata->gpio);
 err_free:
-       kfree(gpio_charger);
        return ret;
 }
 
@@ -155,9 +155,6 @@ static int gpio_charger_remove(struct platform_device *pdev)
 
        gpio_free(gpio_charger->pdata->gpio);
 
-       platform_set_drvdata(pdev, NULL);
-       kfree(gpio_charger);
-
        return 0;
 }