Message ID | 20230717172821.62827-4-andriy.shevchenko@linux.intel.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | pinctrl: Provide NOIRQ PM helper and use it | expand |
Hi Andy, Le lundi 17 juillet 2023 à 20:28 +0300, Andy Shevchenko a écrit : > Since pm.h provides a helper for system no-IRQ PM callbacks, > switch the driver to use it instead of open coded variant. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > drivers/pinctrl/intel/pinctrl-cherryview.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c > b/drivers/pinctrl/intel/pinctrl-cherryview.c > index eee0f9bc3d32..7a2fc9fe175d 100644 > --- a/drivers/pinctrl/intel/pinctrl-cherryview.c > +++ b/drivers/pinctrl/intel/pinctrl-cherryview.c > @@ -1793,7 +1793,6 @@ static int chv_pinctrl_remove(struct > platform_device *pdev) > return 0; > } > > -#ifdef CONFIG_PM_SLEEP > static int chv_pinctrl_suspend_noirq(struct device *dev) > { > struct intel_pinctrl *pctrl = dev_get_drvdata(dev); > @@ -1877,12 +1876,8 @@ static int chv_pinctrl_resume_noirq(struct > device *dev) > > return 0; > } > -#endif > > -static const struct dev_pm_ops chv_pinctrl_pm_ops = { > - SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(chv_pinctrl_suspend_noirq, > - chv_pinctrl_resume_noirq) > -}; > +static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, > chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); That's over 100 characters, please break this line. Cheers, -Paul > > static const struct acpi_device_id chv_pinctrl_acpi_match[] = { > { "INT33FF", (kernel_ulong_t)chv_soc_data }, > @@ -1895,7 +1890,7 @@ static struct platform_driver > chv_pinctrl_driver = { > .remove = chv_pinctrl_remove, > .driver = { > .name = "cherryview-pinctrl", > - .pm = &chv_pinctrl_pm_ops, > + .pm = pm_sleep_ptr(&chv_pinctrl_pm_ops), > .acpi_match_table = chv_pinctrl_acpi_match, > }, > };
On Mon, Jul 17, 2023 at 10:22 PM Paul Cercueil <paul@crapouillou.net> wrote: > Le lundi 17 juillet 2023 à 20:28 +0300, Andy Shevchenko a écrit : ... > > +static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, > > chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); > > That's over 100 characters, please break this line. If it's a problem, I prefer to shorten the names of the callbacks. Would it work for you?
Le lundi 17 juillet 2023 à 22:27 +0300, Andy Shevchenko a écrit : > On Mon, Jul 17, 2023 at 10:22 PM Paul Cercueil <paul@crapouillou.net> > wrote: > > Le lundi 17 juillet 2023 à 20:28 +0300, Andy Shevchenko a écrit : > > ... > > > > +static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, > > > chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); > > > > That's over 100 characters, please break this line. > > If it's a problem, I prefer to shorten the names of the callbacks. > Would it work for you? > That works. -Paul
On Mon, 17 Jul 2023 20:28:14 +0300 Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > Since pm.h provides a helper for system no-IRQ PM callbacks, > switch the driver to use it instead of open coded variant. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Formatting comment inline. Otherwise LGTM Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > --- > drivers/pinctrl/intel/pinctrl-cherryview.c | 9 ++------- > 1 file changed, 2 insertions(+), 7 deletions(-) > > diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/intel/pinctrl-cherryview.c > index eee0f9bc3d32..7a2fc9fe175d 100644 > --- a/drivers/pinctrl/intel/pinctrl-cherryview.c > +++ b/drivers/pinctrl/intel/pinctrl-cherryview.c > @@ -1793,7 +1793,6 @@ static int chv_pinctrl_remove(struct platform_device *pdev) > return 0; > } > > -#ifdef CONFIG_PM_SLEEP > static int chv_pinctrl_suspend_noirq(struct device *dev) > { > struct intel_pinctrl *pctrl = dev_get_drvdata(dev); > @@ -1877,12 +1876,8 @@ static int chv_pinctrl_resume_noirq(struct device *dev) > > return 0; > } > -#endif > > -static const struct dev_pm_ops chv_pinctrl_pm_ops = { > - SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(chv_pinctrl_suspend_noirq, > - chv_pinctrl_resume_noirq) > -}; > + static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); Very long line and readability not hurt by breaking it. > > static const struct acpi_device_id chv_pinctrl_acpi_match[] = { > { "INT33FF", (kernel_ulong_t)chv_soc_data }, > @@ -1895,7 +1890,7 @@ static struct platform_driver chv_pinctrl_driver = { > .remove = chv_pinctrl_remove, > .driver = { > .name = "cherryview-pinctrl", > - .pm = &chv_pinctrl_pm_ops, > + .pm = pm_sleep_ptr(&chv_pinctrl_pm_ops), > .acpi_match_table = chv_pinctrl_acpi_match, > }, > };
On Tue, Jul 18, 2023 at 10:54:53AM +0100, Jonathan Cameron wrote: > On Mon, 17 Jul 2023 20:28:14 +0300 > Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: ... > Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Thanks! ... > > + static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); > > Very long line and readability not hurt by breaking it. Sure.
diff --git a/drivers/pinctrl/intel/pinctrl-cherryview.c b/drivers/pinctrl/intel/pinctrl-cherryview.c index eee0f9bc3d32..7a2fc9fe175d 100644 --- a/drivers/pinctrl/intel/pinctrl-cherryview.c +++ b/drivers/pinctrl/intel/pinctrl-cherryview.c @@ -1793,7 +1793,6 @@ static int chv_pinctrl_remove(struct platform_device *pdev) return 0; } -#ifdef CONFIG_PM_SLEEP static int chv_pinctrl_suspend_noirq(struct device *dev) { struct intel_pinctrl *pctrl = dev_get_drvdata(dev); @@ -1877,12 +1876,8 @@ static int chv_pinctrl_resume_noirq(struct device *dev) return 0; } -#endif -static const struct dev_pm_ops chv_pinctrl_pm_ops = { - SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(chv_pinctrl_suspend_noirq, - chv_pinctrl_resume_noirq) -}; +static DEFINE_NOIRQ_DEV_PM_OPS(chv_pinctrl_pm_ops, chv_pinctrl_suspend_noirq, chv_pinctrl_resume_noirq); static const struct acpi_device_id chv_pinctrl_acpi_match[] = { { "INT33FF", (kernel_ulong_t)chv_soc_data }, @@ -1895,7 +1890,7 @@ static struct platform_driver chv_pinctrl_driver = { .remove = chv_pinctrl_remove, .driver = { .name = "cherryview-pinctrl", - .pm = &chv_pinctrl_pm_ops, + .pm = pm_sleep_ptr(&chv_pinctrl_pm_ops), .acpi_match_table = chv_pinctrl_acpi_match, }, };
Since pm.h provides a helper for system no-IRQ PM callbacks, switch the driver to use it instead of open coded variant. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/pinctrl/intel/pinctrl-cherryview.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-)