regulator: ad5398: Use devm_kzalloc
authorAxel Lin <axel.lin@gmail.com>
Tue, 27 Mar 2012 02:09:42 +0000 (10:09 +0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sun, 1 Apr 2012 10:59:36 +0000 (11:59 +0100)
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/regulator/ad5398.c

index ed587987f445636971f9cbe84d684a54d57a7279..7d51793a072a5c530ea336aa772ce460b2112435 100644 (file)
@@ -220,7 +220,7 @@ static int __devinit ad5398_probe(struct i2c_client *client,
        if (!init_data)
                return -EINVAL;
 
-       chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+       chip = devm_kzalloc(&client->dev, sizeof(*chip), GFP_KERNEL);
        if (!chip)
                return -ENOMEM;
 
@@ -246,7 +246,6 @@ static int __devinit ad5398_probe(struct i2c_client *client,
        return 0;
 
 err:
-       kfree(chip);
        return ret;
 }
 
@@ -255,8 +254,6 @@ static int __devexit ad5398_remove(struct i2c_client *client)
        struct ad5398_chip_info *chip = i2c_get_clientdata(client);
 
        regulator_unregister(chip->rdev);
-       kfree(chip);
-
        return 0;
 }