-@@ -1117,47 +1196,9 @@
-
- build_clear_page();
- build_copy_page();
--}
--
--#ifdef CONFIG_BCM4704
--static void __init mips32_icache_fill(unsigned long addr, uint nbytes)
--{
-- unsigned long ic_lsize = current_cpu_data.icache.linesz;
-- int i;
-- for (i = 0; i < nbytes; i += ic_lsize)
-- fill_icache_line((addr + i));
--}
--
--/*
-- * This must be run from the cache on 4704A0
-- * so there are no mips core BIU ops in progress
-- * when the PFC is enabled.
-- */
--#define PFC_CR0 0xff400000 /* control reg 0 */
--#define PFC_CR1 0xff400004 /* control reg 1 */
--static void __init enable_pfc(u32 mode)
--{
-- /* write range */
-- *(volatile u32 *)PFC_CR1 = 0xffff0000;
--
-- /* enable */
-- *(volatile u32 *)PFC_CR0 = mode;
--}
--#endif
--
--
--void check_enable_mips_pfc(int val)
--{
--
-+
- #ifdef CONFIG_BCM4704
-- struct cpuinfo_mips *c = ¤t_cpu_data;
--
-- /* enable prefetch cache */
-- if (((c->processor_id & (PRID_COMP_MASK | PRID_IMP_MASK)) == PRID_IMP_BCM3302)
-- && (read_c0_diag() & (1 << 29))) {
-- mips32_icache_fill((unsigned long) &enable_pfc, 64);
-- enable_pfc(val);
-- }
-+ check_enable_mips_pfc(0x15);
- #endif
- }
-
-diff -urN linux.old/arch/mips/mm/tlb-r4k.c linux.dev/arch/mips/mm/tlb-r4k.c
---- linux.old/arch/mips/mm/tlb-r4k.c 2005-07-04 23:39:26.000000000 +0200
-+++ linux.dev/arch/mips/mm/tlb-r4k.c 2005-07-05 14:33:14.000000000 +0200
-@@ -38,6 +38,7 @@
- old_ctx = read_c0_entryhi();
- write_c0_entrylo0(0);
- write_c0_entrylo1(0);
-+ BARRIER;
-
- entry = read_c0_wired();
-
-@@ -47,6 +48,7 @@
- write_c0_index(entry);
- mtc0_tlbw_hazard();
- tlb_write_indexed();
-+ BARRIER;
- entry++;
- }
- tlbw_use_hazard();
-@@ -98,6 +100,7 @@
- write_c0_entryhi(KSEG0 + idx*0x2000);
- mtc0_tlbw_hazard();
- tlb_write_indexed();
-+ BARRIER;
- }
- tlbw_use_hazard();
- write_c0_entryhi(oldpid);
-@@ -136,6 +139,7 @@
- tlbw_use_hazard();
-
- finish:
-+ BARRIER;
- write_c0_entryhi(oldpid);
- local_irq_restore(flags);
- }
-@@ -204,6 +208,7 @@
- pmdp = pmd_offset(pgdp, address);
- idx = read_c0_index();
- ptep = pte_offset(pmdp, address);
-+ BARRIER;
- #if defined(CONFIG_64BIT_PHYS_ADDR) && defined(CONFIG_CPU_MIPS32)
- write_c0_entrylo0(ptep->pte_high);
- ptep++;
-@@ -220,6 +225,7 @@
- tlb_write_indexed();
- tlbw_use_hazard();
- write_c0_entryhi(pid);
-+ BARRIER;
- local_irq_restore(flags);
- }
-
-@@ -317,6 +323,7 @@
- }
-
- write_c0_index(temp_tlb_entry);
-+ BARRIER;
- write_c0_pagemask(pagemask);
- write_c0_entryhi(entryhi);
- write_c0_entrylo0(entrylo0);