diff options
author | Mike Frysinger <michael.frysinger@analog.com> | 2007-06-11 15:31:30 +0800 |
---|---|---|
committer | Bryan Wu <bryan.wu@analog.com> | 2007-06-11 15:31:30 +0800 |
commit | 52a078120c33b06a9abb721357adaafc3b55b7c1 (patch) | |
tree | 5a17d6b1c5c0beb639507d9c54b3c26bd99aa8fc /arch/blackfin/mach-bf561 | |
parent | 83a5c3e3218f138b1a99f787c76e380d6a6ecec9 (diff) |
Blackfin arch: move more of our startup code to .init so it can be freed once we are up and running
Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Diffstat (limited to 'arch/blackfin/mach-bf561')
-rw-r--r-- | arch/blackfin/mach-bf561/head.S | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/blackfin/mach-bf561/head.S b/arch/blackfin/mach-bf561/head.S index 3029e940ddcd..31cbc75c85cf 100644 --- a/arch/blackfin/mach-bf561/head.S +++ b/arch/blackfin/mach-bf561/head.S @@ -28,6 +28,7 @@ */ #include <linux/linkage.h> +#include <linux/init.h> #include <asm/blackfin.h> #if CONFIG_BFIN_KERNEL_CLOCK #include <asm/mach/mem_init.h> @@ -42,10 +43,9 @@ #define INITIAL_STACK 0xFFB01000 -.text +__INIT ENTRY(__start) -ENTRY(__stext) /* R0: argument of command line string, passed from uboot, save it */ R7 = R0; /* Set the SYSCFG register: @@ -221,6 +221,7 @@ ENTRY(__stext) .LWAIT_HERE: jump .LWAIT_HERE; +ENDPROC(__start) ENTRY(_real_start) [ -- sp ] = reti; @@ -289,9 +290,10 @@ ENTRY(_real_start) sp = r1; usp = sp; fp = sp; - call _start_kernel; -.L_exit: - jump.s .L_exit; + jump.l _start_kernel; +ENDPROC(_real_start) + +__FINIT .section .l1.text #if CONFIG_BFIN_KERNEL_CLOCK @@ -393,6 +395,7 @@ ENTRY(_start_dma_code) SSYNC; RTS; +ENDPROC(_start_dma_code) #endif /* CONFIG_BFIN_KERNEL_CLOCK */ ENTRY(_bfin_reset) |