iio:dac:max517.c: Use devm_iio_device_register()
authorMugilraj Dhavachelvan <dmugil2000@gmail.com>
Sun, 14 Mar 2021 17:57:09 +0000 (23:27 +0530)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Thu, 25 Mar 2021 19:13:52 +0000 (19:13 +0000)
Use devm_iio_device_register() to avoid remove function and
drop explicit call to iio_device_unregister().

Signed-off-by: Mugilraj Dhavachelvan <dmugil2000@gmail.com>
Reviewed-by: Lars-Peter Clausen <lars@metafoo.de>
Link: https://lore.kernel.org/r/20210314175709.34301-1-dmugil2000@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/dac/max517.c

index daa60386bf0c221c0302d582b14100e6576e1358..a6ef555153f4884161e7eb614ff04d3f4982e2a7 100644 (file)
@@ -153,7 +153,6 @@ static int max517_probe(struct i2c_client *client,
        if (!indio_dev)
                return -ENOMEM;
        data = iio_priv(indio_dev);
-       i2c_set_clientdata(client, indio_dev);
        data->client = client;
 
        switch (id->driver_data) {
@@ -186,13 +185,7 @@ static int max517_probe(struct i2c_client *client,
                        data->vref_mv[chan] = platform_data->vref_mv[chan];
        }
 
-       return iio_device_register(indio_dev);
-}
-
-static int max517_remove(struct i2c_client *client)
-{
-       iio_device_unregister(i2c_get_clientdata(client));
-       return 0;
+       return devm_iio_device_register(&client->dev, indio_dev);
 }
 
 static const struct i2c_device_id max517_id[] = {
@@ -211,7 +204,6 @@ static struct i2c_driver max517_driver = {
                .pm     = &max517_pm_ops,
        },
        .probe          = max517_probe,
-       .remove         = max517_remove,
        .id_table       = max517_id,
 };
 module_i2c_driver(max517_driver);