diff options
| author | Paul Mundt <lethal@linux-sh.org> | 2009-12-04 02:22:11 -0500 |
|---|---|---|
| committer | Paul Mundt <lethal@linux-sh.org> | 2009-12-04 02:22:11 -0500 |
| commit | 6e8a0d11a088ed51b1b649d3a1127a7bda3700a0 (patch) | |
| tree | ccf75bf36c8dd5c5f0dce18be8f5cb8c9ad59079 | |
| parent | a781d1e5ff6277f80ff3c9503775521bc64cf131 (diff) | |
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>
| -rw-r--r-- | arch/sh/kernel/cpu/init.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/arch/sh/kernel/cpu/init.c b/arch/sh/kernel/cpu/init.c index ad9dfff9427c..89b4b76c0d76 100644 --- a/arch/sh/kernel/cpu/init.c +++ b/arch/sh/kernel/cpu/init.c | |||
| @@ -75,16 +75,11 @@ static void __init expmask_init(void) | |||
| 75 | /* | 75 | /* |
| 76 | * Future proofing. | 76 | * Future proofing. |
| 77 | * | 77 | * |
| 78 | * Disable support for slottable sleep instruction | 78 | * Disable support for slottable sleep instruction, non-nop |
| 79 | * and non-nop instructions in the rte delay slot. | 79 | * instructions in the rte delay slot, and associative writes to |
| 80 | * the memory-mapped cache array. | ||
| 80 | */ | 81 | */ |
| 81 | expmask &= ~(EXPMASK_RTEDS | EXPMASK_BRDSSLP); | 82 | expmask &= ~(EXPMASK_RTEDS | EXPMASK_BRDSSLP | EXPMASK_MMCAW); |
| 82 | |||
| 83 | /* | ||
| 84 | * Enable associative writes to the memory-mapped cache array | ||
| 85 | * until the cache flush ops have been rewritten. | ||
| 86 | */ | ||
| 87 | expmask |= EXPMASK_MMCAW; | ||
| 88 | 83 | ||
| 89 | __raw_writel(expmask, EXPMASK); | 84 | __raw_writel(expmask, EXPMASK); |
| 90 | ctrl_barrier(); | 85 | ctrl_barrier(); |
