staging: iio: adis16060: Use devm_iio_device_register
authorSachin Kamat <sachin.kamat@linaro.org>
Tue, 29 Oct 2013 11:39:00 +0000 (11:39 +0000)
committerJonathan Cameron <jic23@kernel.org>
Sun, 24 Nov 2013 21:07:21 +0000 (21:07 +0000)
devm_iio_device_register simplifies the code.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/staging/iio/gyro/adis16060_core.c

index 6d3d771..d5d395c 100644 (file)
@@ -167,7 +167,7 @@ static int adis16060_r_probe(struct spi_device *spi)
        indio_dev->channels = adis16060_channels;
        indio_dev->num_channels = ARRAY_SIZE(adis16060_channels);
 
-       ret = iio_device_register(indio_dev);
+       ret = devm_iio_device_register(&spi->dev, indio_dev);
        if (ret)
                return ret;
 
@@ -175,13 +175,6 @@ static int adis16060_r_probe(struct spi_device *spi)
        return 0;
 }
 
-/* fixme, confirm ordering in this function */
-static int adis16060_r_remove(struct spi_device *spi)
-{
-       iio_device_unregister(spi_get_drvdata(spi));
-       return 0;
-}
-
 static int adis16060_w_probe(struct spi_device *spi)
 {
        int ret;
@@ -211,7 +204,6 @@ static struct spi_driver adis16060_r_driver = {
                .owner = THIS_MODULE,
        },
        .probe = adis16060_r_probe,
-       .remove = adis16060_r_remove,
 };
 
 static struct spi_driver adis16060_w_driver = {