From: Shanghui Liu <shliu@broadcom.com>
Date: Wed, 7 Jan 2015 11:28:22 +0000 (+0530)
Subject: MIPS: Netlogic: Fix wait for slave CPUs
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=46ab6f24ac7b05c07e2936124b45da5f2f8fdc61;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git

MIPS: Netlogic: Fix wait for slave CPUs

For core 0, the condition of "cpu == bootcpu" is always true, so it
does not wait for other three threads to become ready. Fix this by
using correct check.

Signed-off-by: Shanghui Liu <shliu@broadcom.com>
Signed-off-by: Jayachandran C <jchandra@broadcom.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/8881/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
---

diff --git a/arch/mips/netlogic/xlp/wakeup.c b/arch/mips/netlogic/xlp/wakeup.c
index e5f44d2605a8..26d82f79ef29 100644
--- a/arch/mips/netlogic/xlp/wakeup.c
+++ b/arch/mips/netlogic/xlp/wakeup.c
@@ -99,7 +99,7 @@ static int wait_for_cpus(int cpu, int bootcpu)
 	do {
 		notready = nlm_threads_per_core;
 		for (i = 0; i < nlm_threads_per_core; i++)
-			if (cpu_ready[cpu + i] || cpu == bootcpu)
+			if (cpu_ready[cpu + i] || (cpu + i) == bootcpu)
 				--notready;
 	} while (notready != 0 && --count > 0);