2022-04-14 14:53:39

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v1 1/1] iio: afe: rescale: Make use of device properties

Convert the module to be property provider agnostic and allow
it to be used on non-OF platforms.

Signed-off-by: Andy Shevchenko <[email protected]>
---
drivers/iio/afe/Kconfig | 1 -
drivers/iio/afe/iio-rescale.c | 5 ++---
2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/iio/afe/Kconfig b/drivers/iio/afe/Kconfig
index 4fa397822cff..9a1d95c1c7ed 100644
--- a/drivers/iio/afe/Kconfig
+++ b/drivers/iio/afe/Kconfig
@@ -8,7 +8,6 @@ menu "Analog Front Ends"

config IIO_RESCALE
tristate "IIO rescale"
- depends on OF || COMPILE_TEST
help
Say yes here to build support for the IIO rescaling
that handles voltage dividers, current sense shunts and
diff --git a/drivers/iio/afe/iio-rescale.c b/drivers/iio/afe/iio-rescale.c
index 7e511293d6d1..c6cf709f0f05 100644
--- a/drivers/iio/afe/iio-rescale.c
+++ b/drivers/iio/afe/iio-rescale.c
@@ -10,9 +10,8 @@

#include <linux/err.h>
#include <linux/gcd.h>
+#include <linux/mod_devicetable.h>
#include <linux/module.h>
-#include <linux/of.h>
-#include <linux/of_device.h>
#include <linux/platform_device.h>
#include <linux/property.h>

@@ -536,7 +535,7 @@ static int rescale_probe(struct platform_device *pdev)

rescale = iio_priv(indio_dev);

- rescale->cfg = of_device_get_match_data(dev);
+ rescale->cfg = device_get_match_data(dev);
rescale->numerator = 1;
rescale->denominator = 1;
rescale->offset = 0;
--
2.35.1


2022-04-15 21:32:47

by Liam Beguin

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] iio: afe: rescale: Make use of device properties

Hi Andy,

On Wed, Apr 13, 2022 at 10:01:17PM +0300, Andy Shevchenko wrote:
> Convert the module to be property provider agnostic and allow
> it to be used on non-OF platforms.
>
> Signed-off-by: Andy Shevchenko <[email protected]>
> ---
> drivers/iio/afe/Kconfig | 1 -
> drivers/iio/afe/iio-rescale.c | 5 ++---
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/iio/afe/Kconfig b/drivers/iio/afe/Kconfig
> index 4fa397822cff..9a1d95c1c7ed 100644
> --- a/drivers/iio/afe/Kconfig
> +++ b/drivers/iio/afe/Kconfig
> @@ -8,7 +8,6 @@ menu "Analog Front Ends"
>
> config IIO_RESCALE
> tristate "IIO rescale"
> - depends on OF || COMPILE_TEST
> help
> Say yes here to build support for the IIO rescaling
> that handles voltage dividers, current sense shunts and
> diff --git a/drivers/iio/afe/iio-rescale.c b/drivers/iio/afe/iio-rescale.c
> index 7e511293d6d1..c6cf709f0f05 100644
> --- a/drivers/iio/afe/iio-rescale.c
> +++ b/drivers/iio/afe/iio-rescale.c
> @@ -10,9 +10,8 @@
>
> #include <linux/err.h>
> #include <linux/gcd.h>
> +#include <linux/mod_devicetable.h>

Is this really needed?
device_get_match_data() is already defined in <linux/property.h>

Cheers,
Liam

> #include <linux/module.h>
> -#include <linux/of.h>
> -#include <linux/of_device.h>
> #include <linux/platform_device.h>
> #include <linux/property.h>
>
> @@ -536,7 +535,7 @@ static int rescale_probe(struct platform_device *pdev)
>
> rescale = iio_priv(indio_dev);
>
> - rescale->cfg = of_device_get_match_data(dev);
> + rescale->cfg = device_get_match_data(dev);
> rescale->numerator = 1;
> rescale->denominator = 1;
> rescale->offset = 0;
> --
> 2.35.1
>

2022-04-16 02:37:19

by Liam Beguin

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] iio: afe: rescale: Make use of device properties

On Thu, Apr 14, 2022 at 08:03:59PM +0300, Andy Shevchenko wrote:
> On Thu, Apr 14, 2022 at 10:32:38AM -0400, Liam Beguin wrote:
> > Hi Andy,
> >
> > On Wed, Apr 13, 2022 at 10:01:17PM +0300, Andy Shevchenko wrote:
> > > Convert the module to be property provider agnostic and allow
> > > it to be used on non-OF platforms.
>
> > > +#include <linux/mod_devicetable.h>
> >
> > Is this really needed?
>
> Yes.
> This header is missed. I can split its addition to a separate patch.

Understood, maybe a separate patch would make it more explicit.

Cheers,
Liam

> > device_get_match_data() is already defined in <linux/property.h>
>
> It's indirectly related (just like we do when we clean up of.h). Since
> the original of.h is missed there is no header replacement, just adding.
>
> --
> With Best Regards,
> Andy Shevchenko
>
>

2022-04-16 02:38:19

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] iio: afe: rescale: Make use of device properties

On Thu, Apr 14, 2022 at 10:32:38AM -0400, Liam Beguin wrote:
> Hi Andy,
>
> On Wed, Apr 13, 2022 at 10:01:17PM +0300, Andy Shevchenko wrote:
> > Convert the module to be property provider agnostic and allow
> > it to be used on non-OF platforms.

> > +#include <linux/mod_devicetable.h>
>
> Is this really needed?

Yes.
This header is missed. I can split its addition to a separate patch.

> device_get_match_data() is already defined in <linux/property.h>

It's indirectly related (just like we do when we clean up of.h). Since
the original of.h is missed there is no header replacement, just adding.

--
With Best Regards,
Andy Shevchenko


2022-04-16 16:40:22

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH v1 1/1] iio: afe: rescale: Make use of device properties

On Fri, 15 Apr 2022 10:47:23 -0400
Liam Beguin <[email protected]> wrote:

> On Thu, Apr 14, 2022 at 08:03:59PM +0300, Andy Shevchenko wrote:
> > On Thu, Apr 14, 2022 at 10:32:38AM -0400, Liam Beguin wrote:
> > > Hi Andy,
> > >
> > > On Wed, Apr 13, 2022 at 10:01:17PM +0300, Andy Shevchenko wrote:
> > > > Convert the module to be property provider agnostic and allow
> > > > it to be used on non-OF platforms.
> >
> > > > +#include <linux/mod_devicetable.h>
> > >
> > > Is this really needed?
> >
> > Yes.
> > This header is missed. I can split its addition to a separate patch.
>
> Understood, maybe a separate patch would make it more explicit.

You could also argue that the main route people 'expect' that header via
is of.h and given that include is dropped in this patch, we have even more reason
mod_devicetable.h should be included.

So I'm fine with this in one patch on that basis.

Also I'm lazy and not having to go to v2 on this saves me a little bit of effort :)

Hence applied.


Jonathan

>
> Cheers,
> Liam
>
> > > device_get_match_data() is already defined in <linux/property.h>
> >
> > It's indirectly related (just like we do when we clean up of.h). Since
> > the original of.h is missed there is no header replacement, just adding.
> >
> > --
> > With Best Regards,
> > Andy Shevchenko
> >
> >