]> Pileus Git - ~andy/linux/commitdiff
staging: iio: adis16220: 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:19 +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/accel/adis16220_core.c

index 4c9364b63c77d61a1088298993ad46435c0cca6e..6f38ca95f9bb39eb1379e75d7b9175be1a07aa8f 100644 (file)
@@ -439,13 +439,13 @@ static int adis16220_probe(struct spi_device *spi)
        indio_dev->channels = adis16220_channels;
        indio_dev->num_channels = ARRAY_SIZE(adis16220_channels);
 
-       ret = iio_device_register(indio_dev);
+       ret = devm_iio_device_register(&spi->dev, indio_dev);
        if (ret)
                return ret;
 
        ret = sysfs_create_bin_file(&indio_dev->dev.kobj, &accel_bin);
        if (ret)
-               goto error_unregister_dev;
+               return ret;
 
        ret = sysfs_create_bin_file(&indio_dev->dev.kobj, &adc1_bin);
        if (ret)
@@ -470,8 +470,6 @@ error_rm_adc1_bin:
        sysfs_remove_bin_file(&indio_dev->dev.kobj, &adc1_bin);
 error_rm_accel_bin:
        sysfs_remove_bin_file(&indio_dev->dev.kobj, &accel_bin);
-error_unregister_dev:
-       iio_device_unregister(indio_dev);
        return ret;
 }
 
@@ -482,7 +480,6 @@ static int adis16220_remove(struct spi_device *spi)
        sysfs_remove_bin_file(&indio_dev->dev.kobj, &adc2_bin);
        sysfs_remove_bin_file(&indio_dev->dev.kobj, &adc1_bin);
        sysfs_remove_bin_file(&indio_dev->dev.kobj, &accel_bin);
-       iio_device_unregister(indio_dev);
 
        return 0;
 }