From 4f07d0ccc25dd2ca4147fee046efffe9f7416a0e Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Sat, 7 Jun 1997 10:42:39 +0000 Subject: Add comment about handling of c0_pagemask in Linux and a R4600 1.7 bug. --- arch/mips/mm/r4xx0.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'arch/mips/mm/r4xx0.c') diff --git a/arch/mips/mm/r4xx0.c b/arch/mips/mm/r4xx0.c index f83f41df8..974343069 100644 --- a/arch/mips/mm/r4xx0.c +++ b/arch/mips/mm/r4xx0.c @@ -2432,6 +2432,14 @@ try_again: flush_cache_all(); write_32bit_cp0_register(CP0_WIRED, 0); + + /* + * You should never change this register: + * - On R4600 1.7 the tlbp never hits for pages smaller than + * the value in the c0_pagemask register. + * - The entire mm handling assumes the c0_pagemask register to + * be set for 4kb pages. + */ write_32bit_cp0_register(CP0_PAGEMASK, PM_4K); flush_tlb_all(); } -- cgit v1.2.3