Re: [PATCH v2] firmware/psci: Print a warning if PSCI doesn't accept PC mode

Sudeep Holla
2022-09-21T14:37:30Z

On Mon, Sep 19, 2022 at 02:58:57PM +0300, Dmitry Baryshkov wrote:
> On 05/08/2022 17:19, Mark Rutland wrote:
> > On Thu, Aug 04, 2022 at 04:07:50PM +0300, Dmitry Baryshkov wrote:
> > > The function psci_pd_try_set_osi_mode() will print an error if enabling
> > > OSI mode fails. To ease debugging PSCI issues print corresponding
> > > message if switching to PC mode fails too.
> > >
> > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> >
> > Acked-by: Mark Rutland <mark.rutland@arm.com>
> >
> > Mark.
>
> Granted that this patch has been acked by the maintainers of PSCI interface,
> how do I proceed? Should I submit it to Russel's patch tracker? Or do PSCI
> patches land via some other tree?
>

Not sure if I mentioned it elsewhere or in v1, we generally ask Arm SoC
team to pick up patches directly as they are always 1-2 and rarely large
set. You need to cc soc@kernel.org for the same.

> >
> > > ---
> > > This is a replacement for [1], now moving the warning from
> > > psci_set_osi_mode() callers to the function iself.
> > >
> > > https://lore.kernel.org/all/20220727182034.983727-1-dmitry.baryshkov@linaro.org/
> > >
> > > ---
> > > drivers/cpuidle/cpuidle-psci-domain.c | 4 +---
> > > drivers/firmware/psci/psci.c | 2 ++
> > > 2 files changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/cpuidle/cpuidle-psci-domain.c b/drivers/cpuidle/cpuidle-psci-domain.c
> > > index 3db4fca1172b..821984947ed9 100644
> > > --- a/drivers/cpuidle/cpuidle-psci-domain.c
> > > +++ b/drivers/cpuidle/cpuidle-psci-domain.c
> > > @@ -124,10 +124,8 @@ static bool psci_pd_try_set_osi_mode(void)
> > > return false;
> > > ret = psci_set_osi_mode(true);
> > > - if (ret) {
> > > - pr_warn("failed to enable OSI mode: %d\n", ret);
> > > + if (ret)
> > > return false;
> > > - }
> > > return true;
> > > }
> > > diff --git a/drivers/firmware/psci/psci.c b/drivers/firmware/psci/psci.c
> > > index cfb448eabdaa..1628f1edef4a 100644
> > > --- a/drivers/firmware/psci/psci.c
> > > +++ b/drivers/firmware/psci/psci.c
> > > @@ -163,6 +163,8 @@ int psci_set_osi_mode(bool enable)
> > > PSCI_1_0_SUSPEND_MODE_PC;
> > > err = invoke_psci_fn(PSCI_1_0_FN_SET_SUSPEND_MODE, suspend_mode, 0, 0);
> > > + if (err < 0)
> > > + pr_warn("failed to set %s mode: %d\n", enable ? "OSI" : "PC", err);
> > > return psci_to_linux_errno(err);
> > > }
> > > --
> > > 2.35.1
> > >
>
> --
> With best wishes
> Dmitry
>

--
Regards,
Sudeep