Jelajahi Sumber

Blackfin arch: fix bug - Fail to boot jffs2 kernel for BF561 with SMP patch

only if the cplb block overlapped with kernel area, this cplb need be locked

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Graf Yang 16 tahun lalu
induk
melakukan
6776cf4476
1 mengubah file dengan 5 tambahan dan 4 penghapusan
  1. 5 4
      arch/blackfin/kernel/cplb-nompu/cplbinit.c

+ 5 - 4
arch/blackfin/kernel/cplb-nompu/cplbinit.c

@@ -188,10 +188,11 @@ static struct cplb_desc cplb_data[] = {
 
 static u16 __init lock_kernel_check(u32 start, u32 end)
 {
-	if ((end   <= (u32) _end && end   >= (u32)_stext) ||
-	    (start <= (u32) _end && start >= (u32)_stext))
-		return IN_KERNEL;
-	return 0;
+	if (start >= (u32)_end || end <= (u32)_stext)
+		return 0;
+
+	/* This cplb block overlapped with kernel area. */
+	return IN_KERNEL;
 }
 
 static unsigned short __init