Re: [PATCH 02/14] pinctrl: pinctrl-single: move suspend/resume to suspend_noirq/resume_noirq

From: Andy Shevchenko
Date: Mon Jan 15 2024 - 15:04:05 EST


On Mon, Jan 15, 2024 at 6:16 PM Thomas Richard
<thomas.richard@xxxxxxxxxxx> wrote:
>
> The goal is to extend the active period of pinctrl.
> Some devices may need active pinctrl after suspend and/or before resume.
> So move suspend/resume to suspend_noirq/resume_noirq to have active
> pinctrl until suspend_noirq (included), and from resume_noirq
> (included).

->...callback...()
(Same comment I have given for the first patch)

..

> struct pcs_device *pcs;
>
> - pcs = platform_get_drvdata(pdev);
> + pcs = dev_get_drvdata(dev);
> if (!pcs)
> return -EINVAL;

Drop dead code.
This should be simple one line after your change.

struct pcs_device *pcs = dev_get_drvdata(dev);

..

> struct pcs_device *pcs;
>
> - pcs = platform_get_drvdata(pdev);
> + pcs = dev_get_drvdata(dev);
> if (!pcs)
> return -EINVAL;

Ditto.

..

> +static const struct dev_pm_ops pinctrl_single_pm_ops = {
> + SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(pinctrl_single_suspend_noirq,
> + pinctrl_single_resume_noirq)
> +};

Use proper / modern macro.

..

> #endif

Why ifdeferry is needed (esp. taking into account pm_ptr() use below)?

--
With Best Regards,
Andy Shevchenko