leds: convert TCA6507 LED driver to devm_kzalloc()
authorBryan Wu <bryan.wu@canonical.com>
Wed, 4 Jul 2012 04:20:41 +0000 (12:20 +0800)
committerBryan Wu <bryan.wu@canonical.com>
Mon, 23 Jul 2012 23:52:39 +0000 (07:52 +0800)
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Bryan Wu <bryan.wu@canonical.com>
drivers/leds/leds-tca6507.c

index f74a45a49f472ad50b6c072897393b948eaa62b2..dabcf7ae8d0fd6369f6a4fa6142abc3de1d37be3 100644 (file)
@@ -687,7 +687,7 @@ static int __devinit tca6507_probe(struct i2c_client *client,
                        NUM_LEDS);
                return -ENODEV;
        }
-       tca = kzalloc(sizeof(*tca), GFP_KERNEL);
+       tca = devm_kzalloc(&client->dev, sizeof(*tca), GFP_KERNEL);
        if (!tca)
                return -ENOMEM;
 
@@ -727,7 +727,6 @@ exit:
                if (tca->leds[i].led_cdev.name)
                        led_classdev_unregister(&tca->leds[i].led_cdev);
        }
-       kfree(tca);
        return err;
 }
 
@@ -743,7 +742,6 @@ static int __devexit tca6507_remove(struct i2c_client *client)
        }
        tca6507_remove_gpio(tca);
        cancel_work_sync(&tca->work);
-       kfree(tca);
 
        return 0;
 }