mfd: 88pm860x: Convert to managed resources for allocating memory
authorLee Jones <lee.jones@linaro.org>
Thu, 23 May 2013 15:25:03 +0000 (16:25 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Thu, 13 Jun 2013 10:13:39 +0000 (12:13 +0200)
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/88pm860x-core.c

index 629d640..eeb481d 100644 (file)
@@ -1150,7 +1150,8 @@ static int pm860x_probe(struct i2c_client *client,
                return -EINVAL;
        }
 
-       chip = kzalloc(sizeof(struct pm860x_chip), GFP_KERNEL);
+       chip = devm_kzalloc(&client->dev,
+                           sizeof(struct pm860x_chip), GFP_KERNEL);
        if (chip == NULL)
                return -ENOMEM;
 
@@ -1160,7 +1161,6 @@ static int pm860x_probe(struct i2c_client *client,
                ret = PTR_ERR(chip->regmap);
                dev_err(&client->dev, "Failed to allocate register map: %d\n",
                                ret);
-               kfree(chip);
                return ret;
        }
        chip->client = client;
@@ -1203,7 +1203,6 @@ static int pm860x_remove(struct i2c_client *client)
                regmap_exit(chip->regmap_companion);
                i2c_unregister_device(chip->companion);
        }
-       kfree(chip);
        return 0;
 }