Message ID | 20220727182034.983727-1-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | PSCI: Print a warning if PSCI doesn't accept PC mode | expand |
On Wed, Jul 27, 2022 at 09:20:34PM +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. > Are you seeing that even setting to PC mode failing on msm8996. The platform must boot in PC mode, so even if it fails we ignore so not sure if the logging is of much help here IMO. > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/firmware/psci/psci.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/firmware/psci/psci.c b/drivers/firmware/psci/psci.c > index cfb448eabdaa..b907768eea01 100644 > --- a/drivers/firmware/psci/psci.c > +++ b/drivers/firmware/psci/psci.c > @@ -597,7 +597,9 @@ static int __init psci_1_0_init(struct device_node *np) > pr_info("OSI mode supported.\n"); > > /* Default to PC mode. */ > - psci_set_osi_mode(false); > + err = psci_set_osi_mode(false); > + if (err) > + pr_info("setting PC mode failed with %d\n", err); Since we don't care about error value here, does it make sense to add the log in psci_set_osi_mode() that covers both PC and OSI case whenever it is called ?
On Thu, 28 Jul 2022 at 11:58, Sudeep Holla <sudeep.holla@arm.com> wrote: > > On Wed, Jul 27, 2022 at 09:20:34PM +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. > > > > Are you seeing that even setting to PC mode failing on msm8996. The platform > must boot in PC mode, so even if it fails we ignore so not sure if the logging > is of much help here IMO. It helped me to understand that it is not only setting OSI, who fails with the 'not_supported' status, but setting PC mode also fails. Which later led me to checking which functions are provided at all, etc. > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > --- > > drivers/firmware/psci/psci.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/firmware/psci/psci.c b/drivers/firmware/psci/psci.c > > index cfb448eabdaa..b907768eea01 100644 > > --- a/drivers/firmware/psci/psci.c > > +++ b/drivers/firmware/psci/psci.c > > @@ -597,7 +597,9 @@ static int __init psci_1_0_init(struct device_node *np) > > pr_info("OSI mode supported.\n"); > > > > /* Default to PC mode. */ > > - psci_set_osi_mode(false); > > + err = psci_set_osi_mode(false); > > + if (err) > > + pr_info("setting PC mode failed with %d\n", err); > > Since we don't care about error value here, does it make sense to add the > log in psci_set_osi_mode() that covers both PC and OSI case whenever it is > called ? Yes, this sounds like a logical idea. I'll do this in v2.
diff --git a/drivers/firmware/psci/psci.c b/drivers/firmware/psci/psci.c index cfb448eabdaa..b907768eea01 100644 --- a/drivers/firmware/psci/psci.c +++ b/drivers/firmware/psci/psci.c @@ -597,7 +597,9 @@ static int __init psci_1_0_init(struct device_node *np) pr_info("OSI mode supported.\n"); /* Default to PC mode. */ - psci_set_osi_mode(false); + err = psci_set_osi_mode(false); + if (err) + pr_info("setting PC mode failed with %d\n", err); } return 0;
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> --- drivers/firmware/psci/psci.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)