Thread (34 messages) 34 messages, 6 authors, 2014-05-14

[PATCHv4 3/7] ARM: EXYNOS: Support secondary CPU boot of Exynos3250

From: cw00.choi@samsung.com (Chanwoo Choi)
Date: 2014-04-25 05:56:43
Also in: linux-devicetree, linux-samsung-soc, lkml

Hi,

On 04/25/2014 02:54 PM, Tushar Behera wrote:
On 04/25/2014 11:13 AM, Chanwoo Choi wrote:
quoted
Hi,

On 04/25/2014 01:30 PM, Tushar Behera wrote:
quoted
On 04/25/2014 06:46 AM, Chanwoo Choi wrote:
quoted
This patch fix the offset of CPU boot address and don't need to send smc call
of SMC_CMD_CPU1BOOT command for secondary CPU boot because Exynos3250 removes
WFE in secure mode.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
---
 arch/arm/mach-exynos/firmware.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-exynos/firmware.c b/arch/arm/mach-exynos/firmware.c
index aa01c42..386d01d 100644
--- a/arch/arm/mach-exynos/firmware.c
+++ b/arch/arm/mach-exynos/firmware.c
@@ -31,11 +31,17 @@ static int exynos_do_idle(void)
 static int exynos_cpu_boot(int cpu)
 {
 	/*
+	 * Exynos3250 doesn't need to send smc command for secondary CPU boot
+	 * because Exynos3250 removes WFE in secure mode.
+	 */
+	if (soc_is_exynos3250())
+		return 0;
+	/*
 	 * The second parameter of SMC_CMD_CPU1BOOT command means CPU id.
 	 * But, Exynos4212 has only one secondary CPU so second parameter
 	 * isn't used for informing secure firmware about CPU id.
 	 */
-	if (soc_is_exynos4212())
+	else if (soc_is_exynos4212())
This changes is not required.
Do you mean it as following?

	if (soc_is_exynos3250())
		return 0

	if (soc_is_exynos4212())
		cpu = 0;
Yes, logically the flow would be same and code would be more readable.
OK, I'll fix it.

Thanks,
Chanwoo Choi
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help