diff options
Diffstat (limited to 'board/synopsys/hsdk/hsdk.c')
| -rw-r--r-- | board/synopsys/hsdk/hsdk.c | 11 | 
1 files changed, 11 insertions, 0 deletions
| diff --git a/board/synopsys/hsdk/hsdk.c b/board/synopsys/hsdk/hsdk.c index 7641978a7b1..5b3a063b690 100644 --- a/board/synopsys/hsdk/hsdk.c +++ b/board/synopsys/hsdk/hsdk.c @@ -58,6 +58,17 @@ int board_mmc_init(bd_t *bis)  	return 0;  } +void board_jump_and_run(ulong entry, int zero, int arch, uint params) +{ +	void (*kernel_entry)(int zero, int arch, uint params); + +	kernel_entry = (void (*)(int, int, uint))entry; + +	smp_set_core_boot_addr(entry, -1); +	smp_kick_all_cpus(); +	kernel_entry(zero, arch, params); +} +  #define RESET_VECTOR_ADDR	0x0  void smp_set_core_boot_addr(unsigned long addr, int corenr) | 
