diff options
Diffstat (limited to 'cpu/mips/cpu.c')
-rw-r--r-- | cpu/mips/cpu.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/cpu/mips/cpu.c b/cpu/mips/cpu.c index c27abbdd11..e73d138450 100644 --- a/cpu/mips/cpu.c +++ b/cpu/mips/cpu.c @@ -24,6 +24,7 @@ #include <common.h> #include <command.h> #include <asm/inca-ip.h> +#include <asm/mipsregs.h> int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) { @@ -42,3 +43,12 @@ void flush_cache (ulong start_addr, ulong size) { } + +void write_one_tlb( int index, u32 pagemask, u32 hi, u32 low0, u32 low1 ){ + write_32bit_cp0_register(CP0_ENTRYLO0, low0); + write_32bit_cp0_register(CP0_PAGEMASK, pagemask); + write_32bit_cp0_register(CP0_ENTRYLO1, low1); + write_32bit_cp0_register(CP0_ENTRYHI, hi); + write_32bit_cp0_register(CP0_INDEX, index); + tlb_write_indexed(); +} |