]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
iio: adc: ad7949: use devm managed functions
authorLiam Beguin <lvb@xiphos.com>
Sun, 15 Aug 2021 21:33:09 +0000 (17:33 -0400)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Tue, 14 Sep 2021 11:00:31 +0000 (12:00 +0100)
Switch to devm_iio_device_register to finalize devm migration.
This removes the use for iio_device_unregister() and since
mutex_destroy() is not necessary here, remove it altogether.

Signed-off-by: Liam Beguin <lvb@xiphos.com>
Link: https://lore.kernel.org/r/20210815213309.2847711-6-liambeguin@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/ad7949.c

index 879bdca35e04301b741a2a676ab318919142ba2b..44bb5fde83de0b315d91c4f566a0d4d3195a2c83 100644 (file)
@@ -401,34 +401,16 @@ static int ad7949_spi_probe(struct spi_device *spi)
        ret = ad7949_spi_init(ad7949_adc);
        if (ret) {
                dev_err(dev, "enable to init this device: %d\n", ret);
-               goto err;
+               return ret;
        }
 
-       ret = iio_device_register(indio_dev);
-       if (ret) {
+       ret = devm_iio_device_register(dev, indio_dev);
+       if (ret)
                dev_err(dev, "fail to register iio device: %d\n", ret);
-               goto err;
-       }
-
-       return 0;
-
-err:
-       mutex_destroy(&ad7949_adc->lock);
 
        return ret;
 }
 
-static int ad7949_spi_remove(struct spi_device *spi)
-{
-       struct iio_dev *indio_dev = spi_get_drvdata(spi);
-       struct ad7949_adc_chip *ad7949_adc = iio_priv(indio_dev);
-
-       iio_device_unregister(indio_dev);
-       mutex_destroy(&ad7949_adc->lock);
-
-       return 0;
-}
-
 static const struct of_device_id ad7949_spi_of_id[] = {
        { .compatible = "adi,ad7949" },
        { .compatible = "adi,ad7682" },
@@ -451,7 +433,6 @@ static struct spi_driver ad7949_spi_driver = {
                .of_match_table = ad7949_spi_of_id,
        },
        .probe    = ad7949_spi_probe,
-       .remove   = ad7949_spi_remove,
        .id_table = ad7949_spi_id,
 };
 module_spi_driver(ad7949_spi_driver);