diff options
author | Sachin Kamat <sachin.kamat@linaro.org> | 2013-07-22 13:02:00 +0200 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2013-08-03 19:40:49 +0200 |
commit | 6917e1d9af2c5087e933aa18f9117b95101d7cb1 (patch) | |
tree | 684d529880a3d6c315e0cc231b90846406d3bee5 /drivers/iio/adc/max1363.c | |
parent | iio: exynos_adc: Use devm_iio_device_alloc (diff) | |
download | linux-6917e1d9af2c5087e933aa18f9117b95101d7cb1.tar.xz linux-6917e1d9af2c5087e933aa18f9117b95101d7cb1.zip |
iio: max1363: Use devm_iio_device_alloc
Using devm_iio_device_alloc makes code simpler.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio/adc/max1363.c')
-rw-r--r-- | drivers/iio/adc/max1363.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/drivers/iio/adc/max1363.c b/drivers/iio/adc/max1363.c index f148d00b83f7..4fb35d1d7494 100644 --- a/drivers/iio/adc/max1363.c +++ b/drivers/iio/adc/max1363.c @@ -1498,16 +1498,15 @@ static int max1363_probe(struct i2c_client *client, struct iio_dev *indio_dev; struct regulator *vref; - indio_dev = iio_device_alloc(sizeof(struct max1363_state)); - if (indio_dev == NULL) { - ret = -ENOMEM; - goto error_out; - } + indio_dev = devm_iio_device_alloc(&client->dev, + sizeof(struct max1363_state)); + if (!indio_dev) + return -ENOMEM; indio_dev->dev.of_node = client->dev.of_node; ret = iio_map_array_register(indio_dev, client->dev.platform_data); if (ret < 0) - goto error_free_device; + return ret; st = iio_priv(indio_dev); @@ -1590,9 +1589,6 @@ error_disable_reg: regulator_disable(st->reg); error_unregister_map: iio_map_array_unregister(indio_dev); -error_free_device: - iio_device_free(indio_dev); -error_out: return ret; } @@ -1607,7 +1603,6 @@ static int max1363_remove(struct i2c_client *client) regulator_disable(st->vref); regulator_disable(st->reg); iio_map_array_unregister(indio_dev); - iio_device_free(indio_dev); return 0; } |