summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorThiemo Seufer <ths@networkno.de>2005-09-09 20:26:54 +0000
committerRalf Baechle <ralf@linux-mips.org>2005-10-29 19:32:18 +0100
commit10a3dabddd79473130c6ded7f7cef1d55fccc115 (patch)
tree8563bee83ef4b13ca1ca0f9141949437f0c7510f /arch
parent02fe2c9ce3159f62339f30dfe62aeb6e4aa75d6e (diff)
downloadop-kernel-dev-10a3dabddd79473130c6ded7f7cef1d55fccc115.zip
op-kernel-dev-10a3dabddd79473130c6ded7f7cef1d55fccc115.tar.gz
Add/Fix missing bit of R4600 hit cacheop workaround.
Signed-off-by: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/mm/c-r4k.c1
-rw-r--r--arch/mips/mm/pg-r4k.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c
index 586baf2..aa87ae5 100644
--- a/arch/mips/mm/c-r4k.c
+++ b/arch/mips/mm/c-r4k.c
@@ -481,6 +481,7 @@ static inline void local_r4k_flush_icache_range(void *args)
if (end - start > dcache_size) {
r4k_blast_dcache();
} else {
+ R4600_HIT_CACHEOP_WAR_IMPL;
addr = start & ~(dc_lsize - 1);
aend = (end - 1) & ~(dc_lsize - 1);
diff --git a/arch/mips/mm/pg-r4k.c b/arch/mips/mm/pg-r4k.c
index c9e6ee2..f51e180 100644
--- a/arch/mips/mm/pg-r4k.c
+++ b/arch/mips/mm/pg-r4k.c
@@ -209,7 +209,7 @@ static inline void build_cdex_p(void)
}
if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
- build_insn_word(0x8c200000); /* lw $zero, ($at) */
+ build_insn_word(0x3c01a000); /* lui $at, 0xa000 */
mi.c_format.opcode = cache_op;
mi.c_format.rs = 4; /* $a0 */
OpenPOWER on IntegriCloud