Re: [PATCH V4] ARM: mach-shmobile: Don't init CNTVOFF/counter if PSCI is available

From: Oleksandr
Date: Tue May 14 2019 - 12:53:15 EST



On 14.05.19 19:13, Julien Grall wrote:
Hi,

Hi Julien



On 14/05/2019 17:06, Oleksandr Tyshchenko wrote:
diff --git a/arch/arm/mach-shmobile/setup-rcar-gen2.c b/arch/arm/mach-shmobile/setup-rcar-gen2.c
index eea60b2..64e3abd 100644
--- a/arch/arm/mach-shmobile/setup-rcar-gen2.c
+++ b/arch/arm/mach-shmobile/setup-rcar-gen2.c
@@ -17,6 +17,7 @@
 #include <linux/of.h>
 #include <linux/of_fdt.h>
 #include <linux/of_platform.h>
+#include <linux/psci.h>
 #include <asm/mach/arch.h>
 #include <asm/secure_cntvoff.h>
 #include "common.h"
@@ -63,6 +64,15 @@ void __init rcar_gen2_timer_init(void)
ÂÂÂÂÂ void __iomem *base;
ÂÂÂÂÂ u32 freq;
 + /*
+ÂÂÂÂ * If PSCI is available then most likely we are running on PSCI-enabled
+ÂÂÂÂ * U-Boot which, we assume, has already taken care of resetting CNTVOFF
+ÂÂÂÂ * and updating counter module before switching to non-secure mode
+ÂÂÂÂ * and we don't need to.
+ÂÂÂÂ */
+ÂÂÂ if (psci_ops.cpu_on) > +ÂÂÂÂÂÂÂ goto skip_update;
Are you sure this is working when ARM_PSCI_FW is not selected? Is it possible to have a .config for RCAR without ARM_PSCI_FW?

Oh, my fault. Mainline shmobile_defconfig has PSCI stuff disabled.

I should have checked for the PSCI operation to be available only if CONFIG_ARM_PSCI_FW is defined.

Thank you for pointing this out.



Cheers,

--
Regards,

Oleksandr Tyshchenko