diff mbox series

[v1,1/1] hwmon: (iio_hwmon) Make use of device properties

Message ID 20220730125024.87764-1-andriy.shevchenko@linux.intel.com (mailing list archive)
State Superseded
Headers show
Series [v1,1/1] hwmon: (iio_hwmon) Make use of device properties | expand

Commit Message

Andy Shevchenko July 30, 2022, 12:50 p.m. UTC
Convert the module to be property provider agnostic and allow
it to be used on non-OF platforms.

Add mod_devicetable.h include.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/hwmon/iio_hwmon.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Comments

Guenter Roeck Aug. 18, 2022, 11:22 p.m. UTC | #1
On Sat, Jul 30, 2022 at 03:50:24PM +0300, Andy Shevchenko wrote:
> Convert the module to be property provider agnostic and allow
> it to be used on non-OF platforms.
> 
> Add mod_devicetable.h include.
> 
What does that have to do with this patch ?

> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  drivers/hwmon/iio_hwmon.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/hwmon/iio_hwmon.c b/drivers/hwmon/iio_hwmon.c
> index 580a7d125b88..3aa40893fc09 100644
> --- a/drivers/hwmon/iio_hwmon.c
> +++ b/drivers/hwmon/iio_hwmon.c
> @@ -6,11 +6,13 @@
>  
>  #include <linux/kernel.h>
>  #include <linux/slab.h>
> +#include <linux/mod_devicetable.h>
>  #include <linux/module.h>
>  #include <linux/err.h>
>  #include <linux/platform_device.h>
> +#include <linux/property.h>
> +
>  #include <linux/hwmon.h>
> -#include <linux/of.h>
>  #include <linux/hwmon-sysfs.h>
>  #include <linux/iio/consumer.h>
>  #include <linux/iio/types.h>
> @@ -149,8 +151,8 @@ static int iio_hwmon_probe(struct platform_device *pdev)
>  	st->attr_group.attrs = st->attrs;
>  	st->groups[0] = &st->attr_group;
>  
> -	if (dev->of_node) {
> -		sname = devm_kasprintf(dev, GFP_KERNEL, "%pOFn", dev->of_node);
> +	if (dev_fwnode(dev)) {
> +		sname = devm_kasprintf(dev, GFP_KERNEL, "%pfwP", dev_fwnode(dev));
>  		if (!sname)
>  			return -ENOMEM;
>  		strreplace(sname, '-', '_');
Andy Shevchenko Aug. 19, 2022, 9:50 a.m. UTC | #2
On Fri, Aug 19, 2022 at 2:52 AM Guenter Roeck <linux@roeck-us.net> wrote:
> On Sat, Jul 30, 2022 at 03:50:24PM +0300, Andy Shevchenko wrote:
> > Convert the module to be property provider agnostic and allow
> > it to be used on non-OF platforms.
> >
> > Add mod_devicetable.h include.
> >
> What does that have to do with this patch ?

See below.

> > +#include <linux/mod_devicetable.h>

> > -#include <linux/of.h>

The of.h implicitly included missed headers. The mod_devicetable.h is
necessary when we drop of.h. OTOH I haven't checked if
mod_devicetable.h is still included indirectly. Either way the correct
approach is to include mod_devicetable.h since we use a data type from
it (of_device_id IIRC).
Guenter Roeck Aug. 19, 2022, 1:03 p.m. UTC | #3
On Fri, Aug 19, 2022 at 12:50:46PM +0300, Andy Shevchenko wrote:
> On Fri, Aug 19, 2022 at 2:52 AM Guenter Roeck <linux@roeck-us.net> wrote:
> > On Sat, Jul 30, 2022 at 03:50:24PM +0300, Andy Shevchenko wrote:
> > > Convert the module to be property provider agnostic and allow
> > > it to be used on non-OF platforms.
> > >
> > > Add mod_devicetable.h include.
> > >
> > What does that have to do with this patch ?
> 
> See below.
> 
> > > +#include <linux/mod_devicetable.h>
> 
> > > -#include <linux/of.h>
> 
> The of.h implicitly included missed headers. The mod_devicetable.h is
> necessary when we drop of.h. OTOH I haven't checked if
> mod_devicetable.h is still included indirectly. Either way the correct
> approach is to include mod_devicetable.h since we use a data type from
> it (of_device_id IIRC).
> 
Something like

"Include mod_devicetable.h explicitly to replace the dropped of.h which
 included mod_devicetable.h indirectly"

might be useful.

Thanks,
Guenter

> -- 
> With Best Regards,
> Andy Shevchenko
Andy Shevchenko Aug. 19, 2022, 10:07 p.m. UTC | #4
On Fri, Aug 19, 2022 at 4:03 PM Guenter Roeck <linux@roeck-us.net> wrote:
> On Fri, Aug 19, 2022 at 12:50:46PM +0300, Andy Shevchenko wrote:
> > On Fri, Aug 19, 2022 at 2:52 AM Guenter Roeck <linux@roeck-us.net> wrote:
> > > On Sat, Jul 30, 2022 at 03:50:24PM +0300, Andy Shevchenko wrote:

...

> > > > Add mod_devicetable.h include.
> > > >
> > > What does that have to do with this patch ?
> >
> > See below.
> >
> > > > +#include <linux/mod_devicetable.h>
> >
> > > > -#include <linux/of.h>
> >
> > The of.h implicitly included missed headers. The mod_devicetable.h is
> > necessary when we drop of.h. OTOH I haven't checked if
> > mod_devicetable.h is still included indirectly. Either way the correct
> > approach is to include mod_devicetable.h since we use a data type from
> > it (of_device_id IIRC).
> >
> Something like
>
> "Include mod_devicetable.h explicitly to replace the dropped of.h which
>  included mod_devicetable.h indirectly"
>
> might be useful.

Sure, I will add it in v2.
Thanks for review!
diff mbox series

Patch

diff --git a/drivers/hwmon/iio_hwmon.c b/drivers/hwmon/iio_hwmon.c
index 580a7d125b88..3aa40893fc09 100644
--- a/drivers/hwmon/iio_hwmon.c
+++ b/drivers/hwmon/iio_hwmon.c
@@ -6,11 +6,13 @@ 
 
 #include <linux/kernel.h>
 #include <linux/slab.h>
+#include <linux/mod_devicetable.h>
 #include <linux/module.h>
 #include <linux/err.h>
 #include <linux/platform_device.h>
+#include <linux/property.h>
+
 #include <linux/hwmon.h>
-#include <linux/of.h>
 #include <linux/hwmon-sysfs.h>
 #include <linux/iio/consumer.h>
 #include <linux/iio/types.h>
@@ -149,8 +151,8 @@  static int iio_hwmon_probe(struct platform_device *pdev)
 	st->attr_group.attrs = st->attrs;
 	st->groups[0] = &st->attr_group;
 
-	if (dev->of_node) {
-		sname = devm_kasprintf(dev, GFP_KERNEL, "%pOFn", dev->of_node);
+	if (dev_fwnode(dev)) {
+		sname = devm_kasprintf(dev, GFP_KERNEL, "%pfwP", dev_fwnode(dev));
 		if (!sname)
 			return -ENOMEM;
 		strreplace(sname, '-', '_');