diff options
-rw-r--r-- | drivers/staging/iio/meter/ade7854-i2c.c | 6 | ||||
-rw-r--r-- | drivers/staging/iio/meter/ade7854-spi.c | 7 | ||||
-rw-r--r-- | drivers/staging/iio/meter/ade7854.c | 20 |
3 files changed, 2 insertions, 31 deletions
diff --git a/drivers/staging/iio/meter/ade7854-i2c.c b/drivers/staging/iio/meter/ade7854-i2c.c index 07cfe28b24e2..8106f8cceeab 100644 --- a/drivers/staging/iio/meter/ade7854-i2c.c +++ b/drivers/staging/iio/meter/ade7854-i2c.c @@ -227,11 +227,6 @@ static int ade7854_i2c_probe(struct i2c_client *client, return ade7854_probe(indio_dev, &client->dev); } -static int ade7854_i2c_remove(struct i2c_client *client) -{ - return ade7854_remove(i2c_get_clientdata(client)); -} - static const struct i2c_device_id ade7854_id[] = { { "ade7854", 0 }, { "ade7858", 0 }, @@ -246,7 +241,6 @@ static struct i2c_driver ade7854_i2c_driver = { .name = "ade7854", }, .probe = ade7854_i2c_probe, - .remove = ade7854_i2c_remove, .id_table = ade7854_id, }; module_i2c_driver(ade7854_i2c_driver); diff --git a/drivers/staging/iio/meter/ade7854-spi.c b/drivers/staging/iio/meter/ade7854-spi.c index 2413052c5bfb..63e200ffd1f2 100644 --- a/drivers/staging/iio/meter/ade7854-spi.c +++ b/drivers/staging/iio/meter/ade7854-spi.c @@ -296,12 +296,6 @@ static int ade7854_spi_probe(struct spi_device *spi) return ade7854_probe(indio_dev, &spi->dev); } -static int ade7854_spi_remove(struct spi_device *spi) -{ - ade7854_remove(spi_get_drvdata(spi)); - - return 0; -} static const struct spi_device_id ade7854_id[] = { { "ade7854", 0 }, { "ade7858", 0 }, @@ -316,7 +310,6 @@ static struct spi_driver ade7854_driver = { .name = "ade7854", }, .probe = ade7854_spi_probe, - .remove = ade7854_spi_remove, .id_table = ade7854_id, }; module_spi_driver(ade7854_driver); diff --git a/drivers/staging/iio/meter/ade7854.c b/drivers/staging/iio/meter/ade7854.c index a83883596dbc..b0b1be71991a 100644 --- a/drivers/staging/iio/meter/ade7854.c +++ b/drivers/staging/iio/meter/ade7854.c @@ -548,31 +548,15 @@ int ade7854_probe(struct iio_dev *indio_dev, struct device *dev) indio_dev->info = &ade7854_info; indio_dev->modes = INDIO_DIRECT_MODE; - ret = iio_device_register(indio_dev); + ret = devm_iio_device_register(dev, indio_dev); if (ret) return ret; /* Get the device into a sane initial state */ - ret = ade7854_initial_setup(indio_dev); - if (ret) - goto error_unreg_dev; - - return 0; - -error_unreg_dev: - iio_device_unregister(indio_dev); - return ret; + return ade7854_initial_setup(indio_dev); } EXPORT_SYMBOL(ade7854_probe); -int ade7854_remove(struct iio_dev *indio_dev) -{ - iio_device_unregister(indio_dev); - - return 0; -} -EXPORT_SYMBOL(ade7854_remove); - MODULE_AUTHOR("Barry Song <21cnbao@gmail.com>"); MODULE_DESCRIPTION("Analog Devices ADE7854/58/68/78 Polyphase Energy Meter"); MODULE_LICENSE("GPL v2"); |