[RESEND PATCH v2] thermal: tango: add resume support

Arnd Bergmann arnd at arndb.de
Mon Jul 18 03:09:39 PDT 2016


On Monday, July 18, 2016 11:33:28 AM CEST Thierry Reding wrote:

> > +
> > +     return 0;
> > +}
> > +
> > +static SIMPLE_DEV_PM_OPS(tango_thermal_pm, NULL, tango_thermal_resume);
> > +
> > +#define DEV_PM_OPS   &tango_thermal_pm
> > +#else
> > +#define DEV_PM_OPS   NULL
> > +#endif
> 
> In my experience it's often not useful to #ifdef the struct pm_ops.
> These days you almost certainly want PM enabled, and the conditional
> doesn't save you all that much in the first place, because it's not
> unlikely for this to fit into some of the space that would be padded
> out anyway.

This will also generate a warning when CONFIG_PM_SLEEP is not set.
Better write this as

#define DEV_PM_OPS (IS_ENABLED(CONFIG_PM_SLEEP) ? &tango_thermal_pm : NULL)

so the compiler can drop the variable definition when it's not
needed.

> As a side-note, I've noticed that this driver has the following
> dependencies:
> 
>         depends on ARCH_TANGO || COMPILE_TEST
> 
> which, last I checked, is probably going to fail on some architectures
> because you need at least another one on HAS_IOMEM (for readl() and
> writel()). That's a pre-existing problem, of course, so should be fixed
> in a separate patch.

No need, we just merged a patch to no longer allow COMPILE_TEST on
arch/um/, so we can safely rely on MMIO to be available for COMPILE_TEST.

	Arnd



More information about the linux-arm-kernel mailing list