From: Harshit Mogalapalli Date: Thu, 5 Feb 2026 13:12:13 +0000 (-0800) Subject: iio: sca3000: manage device registration with devm helper X-Git-Tag: v7.1-rc1~17^2~120^2~103 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=8b012728ed9fb0f05d05c464a7faa04800e087bf;p=thirdparty%2Fkernel%2Flinux.git iio: sca3000: manage device registration with devm helper Convert the iio registration to use devm_* helpers so the probe no longer needs a separate cleanup path and remove callback can also drop the unregister. After this there is no need for having a remove callback, so remote it. No functional change intended. Suggested-by: Andy Shevchenko Reviewed-by: David Lechner Reviewed-by: Andy Shevchenko Signed-off-by: Harshit Mogalapalli Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/accel/sca3000.c b/drivers/iio/accel/sca3000.c index 9d6a310139092..573831199bbaa 100644 --- a/drivers/iio/accel/sca3000.c +++ b/drivers/iio/accel/sca3000.c @@ -1459,7 +1459,6 @@ static int sca3000_probe(struct spi_device *spi) return -ENOMEM; st = iio_priv(indio_dev); - spi_set_drvdata(spi, indio_dev); st->us = spi; mutex_init(&st->lock); st->info = spi_get_device_match_data(spi); @@ -1501,18 +1500,7 @@ static int sca3000_probe(struct spi_device *spi) if (ret) return ret; - ret = iio_device_register(indio_dev); - if (ret) - return ret; - - return 0; -} - -static void sca3000_remove(struct spi_device *spi) -{ - struct iio_dev *indio_dev = spi_get_drvdata(spi); - - iio_device_unregister(indio_dev); + return devm_iio_device_register(dev, indio_dev); } static const struct spi_device_id sca3000_id[] = { @@ -1529,7 +1517,6 @@ static struct spi_driver sca3000_driver = { .name = "sca3000", }, .probe = sca3000_probe, - .remove = sca3000_remove, .id_table = sca3000_id, }; module_spi_driver(sca3000_driver);