Home | History | Annotate | Download | only in cpu
      1 // SPDX-License-Identifier: GPL-2.0+
      2 /*
      3  * (C) Copyright 2003
      4  * Wolfgang Denk, DENX Software Engineering, <wd (at) denx.de>
      5  */
      6 
      7 #include <common.h>
      8 #include <command.h>
      9 #include <linux/compiler.h>
     10 #include <asm/cache.h>
     11 #include <asm/mipsregs.h>
     12 #include <asm/reboot.h>
     13 
     14 #ifndef CONFIG_SYSRESET
     15 void __weak _machine_restart(void)
     16 {
     17 	fprintf(stderr, "*** reset failed ***\n");
     18 
     19 	while (1)
     20 		/* NOP */;
     21 }
     22 
     23 int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
     24 {
     25 	_machine_restart();
     26 
     27 	return 0;
     28 }
     29 #endif
     30 
     31 void write_one_tlb(int index, u32 pagemask, u32 hi, u32 low0, u32 low1)
     32 {
     33 	write_c0_entrylo0(low0);
     34 	write_c0_pagemask(pagemask);
     35 	write_c0_entrylo1(low1);
     36 	write_c0_entryhi(hi);
     37 	write_c0_index(index);
     38 	tlb_write_indexed();
     39 }
     40 
     41 int arch_cpu_init(void)
     42 {
     43 	mips_cache_probe();
     44 	return 0;
     45 }
     46