diff options
author | Tom Rini <trini@ti.com> | 2014-09-12 11:27:46 -0400 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-09-12 11:27:46 -0400 |
commit | 114cc4290b2f24bb314edf2edd5d8738a0778c4b (patch) | |
tree | e3ca947656fea69adb810bab0ee5a32c0d413919 /arch/arm/lib | |
parent | b7a809957bcd72c2efa49ce733774b1e28878585 (diff) | |
parent | a7f99bf139b3aaa0d5494693fd0395084355e41a (diff) | |
download | blackbird-obmc-uboot-114cc4290b2f24bb314edf2edd5d8738a0778c4b.tar.gz blackbird-obmc-uboot-114cc4290b2f24bb314edf2edd5d8738a0778c4b.zip |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Diffstat (limited to 'arch/arm/lib')
-rw-r--r-- | arch/arm/lib/eabi_compat.c | 15 | ||||
-rw-r--r-- | arch/arm/lib/reset.c | 6 | ||||
-rw-r--r-- | arch/arm/lib/spl.c | 3 | ||||
-rw-r--r-- | arch/arm/lib/vectors.S | 6 |
4 files changed, 22 insertions, 8 deletions
diff --git a/arch/arm/lib/eabi_compat.c b/arch/arm/lib/eabi_compat.c index 10d19333fc..a2cb06e49a 100644 --- a/arch/arm/lib/eabi_compat.c +++ b/arch/arm/lib/eabi_compat.c @@ -20,8 +20,19 @@ int raise (int signum) /* Dummy function to avoid linker complaints */ void __aeabi_unwind_cpp_pr0(void) { -}; +} void __aeabi_unwind_cpp_pr1(void) { -}; +} + +/* Copy memory like memcpy, but no return value required. */ +void __aeabi_memcpy(void *dest, const void *src, size_t n) +{ + (void) memcpy(dest, src, n); +} + +void __aeabi_memset(void *dest, size_t n, int c) +{ + (void) memset(dest, c, n); +} diff --git a/arch/arm/lib/reset.c b/arch/arm/lib/reset.c index 7a0358071c..9a95f08504 100644 --- a/arch/arm/lib/reset.c +++ b/arch/arm/lib/reset.c @@ -23,6 +23,10 @@ #include <common.h> +__weak void reset_misc(void) +{ +} + int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { puts ("resetting ...\n"); @@ -30,6 +34,8 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) udelay (50000); /* wait 50 ms */ disable_interrupts(); + + reset_misc(); reset_cpu(0); /*NOTREACHED*/ diff --git a/arch/arm/lib/spl.c b/arch/arm/lib/spl.c index dfcc596815..75ab546923 100644 --- a/arch/arm/lib/spl.c +++ b/arch/arm/lib/spl.c @@ -28,9 +28,6 @@ void __weak board_init_f(ulong dummy) /* Clear the BSS. */ memset(__bss_start, 0, __bss_end - __bss_start); - /* Set global data pointer. */ - gd = &gdata; - board_init_r(NULL, 0); } diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S index 493f3373f3..0cb87cee7f 100644 --- a/arch/arm/lib/vectors.S +++ b/arch/arm/lib/vectors.S @@ -45,12 +45,13 @@ ************************************************************************* */ +_start: + #ifdef CONFIG_SYS_DV_NOR_BOOT_CFG .word CONFIG_SYS_DV_NOR_BOOT_CFG #endif -_start: - ldr pc, _reset + b reset ldr pc, _undefined_instruction ldr pc, _software_interrupt ldr pc, _prefetch_abort @@ -77,7 +78,6 @@ _start: .globl _irq .globl _fiq -_reset: .word reset _undefined_instruction: .word undefined_instruction _software_interrupt: .word software_interrupt _prefetch_abort: .word prefetch_abort |