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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 21/09/2022 17:36, Sudeep Holla wrote:
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@xxxxxxxxxx>

Acked-by: Mark Rutland <mark.rutland@xxxxxxx>

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@xxxxxxxxxx for the same.

Ack, I'll resend v2 cc'ing soc@



---
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@xxxxxxxxxx/

---
   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



--
With best wishes
Dmitry




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux