From: Sachin Kamat Date: Sat, 24 Aug 2013 19:24:00 +0000 (+0100) Subject: staging: iio: ad7152: Use devm_iio_device_alloc X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=538ee7cbffc1663d76f257438c35c889b0664fcc;p=linux-beck.git staging: iio: ad7152: Use devm_iio_device_alloc Using devm_iio_device_alloc makes code simpler. Signed-off-by: Sachin Kamat Signed-off-by: Jonathan Cameron --- diff --git a/drivers/staging/iio/cdc/ad7152.c b/drivers/staging/iio/cdc/ad7152.c index 1d7c5283a85c..f2c309d1eb59 100644 --- a/drivers/staging/iio/cdc/ad7152.c +++ b/drivers/staging/iio/cdc/ad7152.c @@ -481,11 +481,9 @@ static int ad7152_probe(struct i2c_client *client, struct ad7152_chip_info *chip; struct iio_dev *indio_dev; - indio_dev = iio_device_alloc(sizeof(*chip)); - if (indio_dev == NULL) { - ret = -ENOMEM; - goto error_ret; - } + indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*chip)); + if (!indio_dev) + return -ENOMEM; chip = iio_priv(indio_dev); /* this is only used for device removal purposes */ i2c_set_clientdata(client, indio_dev); @@ -506,16 +504,11 @@ static int ad7152_probe(struct i2c_client *client, ret = iio_device_register(indio_dev); if (ret) - goto error_free_dev; + return ret; dev_err(&client->dev, "%s capacitive sensor registered\n", id->name); return 0; - -error_free_dev: - iio_device_free(indio_dev); -error_ret: - return ret; } static int ad7152_remove(struct i2c_client *client) @@ -523,7 +516,6 @@ static int ad7152_remove(struct i2c_client *client) struct iio_dev *indio_dev = i2c_get_clientdata(client); iio_device_unregister(indio_dev); - iio_device_free(indio_dev); return 0; }