Ver Fonte

sh: Make associative cache writes fatal on all SH-4A parts.

Now that associative cache writes are no longer needed by the SH-4/SH-4A
cache flush code, associative write support can be explicitly disabled
for all SH-4A parts. This makes any associative write throw an exception,
as this behaviour can not be assumed to exist on future parts.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt há 15 anos atrás
pai
commit
6e8a0d11a0
1 ficheiros alterados com 4 adições e 9 exclusões
  1. 4 9
      arch/sh/kernel/cpu/init.c

+ 4 - 9
arch/sh/kernel/cpu/init.c

@@ -75,16 +75,11 @@ static void __init expmask_init(void)
 	/*
 	/*
 	 * Future proofing.
 	 * Future proofing.
 	 *
 	 *
-	 * Disable support for slottable sleep instruction
-	 * and non-nop instructions in the rte delay slot.
+	 * Disable support for slottable sleep instruction, non-nop
+	 * instructions in the rte delay slot, and associative writes to
+	 * the memory-mapped cache array.
 	 */
 	 */
-	expmask &= ~(EXPMASK_RTEDS | EXPMASK_BRDSSLP);
-
-	/*
-	 * Enable associative writes to the memory-mapped cache array
-	 * until the cache flush ops have been rewritten.
-	 */
-	expmask |= EXPMASK_MMCAW;
+	expmask &= ~(EXPMASK_RTEDS | EXPMASK_BRDSSLP | EXPMASK_MMCAW);
 
 
 	__raw_writel(expmask, EXPMASK);
 	__raw_writel(expmask, EXPMASK);
 	ctrl_barrier();
 	ctrl_barrier();