diff options
author | Sascha Hauer <sha@octopus.labnet.pengutronix.de> | 2007-09-16 11:16:08 +0200 |
---|---|---|
committer | Sascha Hauer <sha@octopus.labnet.pengutronix.de> | 2007-09-16 11:16:08 +0200 |
commit | ca8ae5695a417202f4e4d0f915fd7983e19b481e (patch) | |
tree | 4efb1dbf90e0459dc60b9d177ea10f87d8c31567 /arch/blackfin | |
parent | 1ef73a95bedb32f82017e8891ff917d47396021e (diff) | |
download | barebox-ca8ae5695a417202f4e4d0f915fd7983e19b481e.tar.gz barebox-ca8ae5695a417202f4e4d0f915fd7983e19b481e.tar.xz |
add the possibility to have a arch specific 'go' command. Some
architectures need this (e.g. blackfin and i386)
Diffstat (limited to 'arch/blackfin')
-rw-r--r-- | arch/blackfin/lib/board.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/arch/blackfin/lib/board.c b/arch/blackfin/lib/board.c index 9a9a83dfbd..df64aadfc8 100644 --- a/arch/blackfin/lib/board.c +++ b/arch/blackfin/lib/board.c @@ -32,7 +32,7 @@ #include <init.h> #include <environment.h> #include <mem_malloc.h> -#include "blackfin_board.h" +#include <asm/cpu.h> int blackfin_mem_malloc_init(void) { @@ -43,8 +43,13 @@ int blackfin_mem_malloc_init(void) core_initcall(blackfin_mem_malloc_init); -void reset_cpu(ulong ignored) +int arch_execute(unsigned long address, int argc, char *argv[]) { - printf("do not ave a reset function\n"); - while (1); + int ret; + + icache_disable(); + ret = ((ulong (*)(int, char *[]))address) (argc, &argv[0]); + icache_enable(); + + return ret; } |