Re: [PATCH 1/8] iio: core: drop devm_iio_device_unregister() API call

From: Jonathan Cameron
Date: Mon Mar 16 2020 - 07:45:37 EST


On Mon, 16 Mar 2020 09:09:08 +0000
"Ardelean, Alexandru" <alexandru.Ardelean@xxxxxxxxxx> wrote:

> On Thu, 2020-02-27 at 15:52 +0200, Alexandru Ardelean wrote:
> > It's unused so far, so it can't be removed. Also makes sense to remove it
> > to discourage weird uses of this call during review.
>
> Any thoughts on this?
> I suspect that this may be one of those "I'd like to sit on this for a while"
> patchsets?
> Which is fine.

Got it in one. It's both extremely simple and extremely likely to break
someones out of tree driver. I guessing all the ADI ones are fine though :)

> But I'm also wondering if this got omitted.

Wise to check, it wouldn't be the first time I'd lost a whole
series.

Thanks,

Jonathan



>
> Thanks
> Alex
>
> >
> > Signed-off-by: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx>
> > ---
> > .../driver-api/driver-model/devres.rst | 1 -
> > drivers/iio/industrialio-core.c | 17 -----------------
> > include/linux/iio/iio.h | 4 ----
> > 3 files changed, 22 deletions(-)
> >
> > diff --git a/Documentation/driver-api/driver-model/devres.rst
> > b/Documentation/driver-api/driver-model/devres.rst
> > index 46c13780994c..0580c64ebdfd 100644
> > --- a/Documentation/driver-api/driver-model/devres.rst
> > +++ b/Documentation/driver-api/driver-model/devres.rst
> > @@ -286,7 +286,6 @@ IIO
> > devm_iio_device_alloc()
> > devm_iio_device_free()
> > devm_iio_device_register()
> > - devm_iio_device_unregister()
> > devm_iio_kfifo_allocate()
> > devm_iio_kfifo_free()
> > devm_iio_triggered_buffer_setup()
> > diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
> > index 0b14666dff09..e4011f8431f9 100644
> > --- a/drivers/iio/industrialio-core.c
> > +++ b/drivers/iio/industrialio-core.c
> > @@ -1823,23 +1823,6 @@ int __devm_iio_device_register(struct device *dev,
> > struct iio_dev *indio_dev,
> > }
> > EXPORT_SYMBOL_GPL(__devm_iio_device_register);
> >
> > -/**
> > - * devm_iio_device_unregister - Resource-managed iio_device_unregister()
> > - * @dev: Device this iio_dev belongs to
> > - * @indio_dev: the iio_dev associated with the device
> > - *
> > - * Unregister iio_dev registered with devm_iio_device_register().
> > - */
> > -void devm_iio_device_unregister(struct device *dev, struct iio_dev
> > *indio_dev)
> > -{
> > - int rc;
> > -
> > - rc = devres_release(dev, devm_iio_device_unreg,
> > - devm_iio_device_match, indio_dev);
> > - WARN_ON(rc);
> > -}
> > -EXPORT_SYMBOL_GPL(devm_iio_device_unregister);
> > -
> > /**
> > * iio_device_claim_direct_mode - Keep device in direct mode
> > * @indio_dev: the iio_dev associated with the device
> > diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h
> > index 862ce0019eba..0eb9e8d7ec68 100644
> > --- a/include/linux/iio/iio.h
> > +++ b/include/linux/iio/iio.h
> > @@ -591,9 +591,6 @@ void iio_device_unregister(struct iio_dev *indio_dev);
> > * calls iio_device_register() internally. Refer to that function for more
> > * information.
> > *
> > - * If an iio_dev registered with this function needs to be unregistered
> > - * separately, devm_iio_device_unregister() must be used.
> > - *
> > * RETURNS:
> > * 0 on success, negative error number on failure.
> > */
> > @@ -601,7 +598,6 @@ void iio_device_unregister(struct iio_dev *indio_dev);
> > __devm_iio_device_register((dev), (indio_dev), THIS_MODULE);
> > int __devm_iio_device_register(struct device *dev, struct iio_dev *indio_dev,
> > struct module *this_mod);
> > -void devm_iio_device_unregister(struct device *dev, struct iio_dev
> > *indio_dev);
> > int iio_push_event(struct iio_dev *indio_dev, u64 ev_code, s64 timestamp);
> > int iio_device_claim_direct_mode(struct iio_dev *indio_dev);
> > void iio_device_release_direct_mode(struct iio_dev *indio_dev);