diff options
author | Mike Frysinger <michael.frysinger@analog.com> | 2007-06-11 03:31:30 -0400 |
---|---|---|
committer | Bryan Wu <bryan.wu@analog.com> | 2007-06-11 03:31:30 -0400 |
commit | 52a078120c33b06a9abb721357adaafc3b55b7c1 (patch) | |
tree | 5a17d6b1c5c0beb639507d9c54b3c26bd99aa8fc /arch/blackfin/mach-bf533/head.S | |
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-bf533/head.S')
-rw-r--r-- | arch/blackfin/mach-bf533/head.S | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/blackfin/mach-bf533/head.S b/arch/blackfin/mach-bf533/head.S index 33d1f623fe4e..7e2aa8d0f44f 100644 --- a/arch/blackfin/mach-bf533/head.S +++ b/arch/blackfin/mach-bf533/head.S | |||
@@ -28,6 +28,7 @@ | |||
28 | */ | 28 | */ |
29 | 29 | ||
30 | #include <linux/linkage.h> | 30 | #include <linux/linkage.h> |
31 | #include <linux/init.h> | ||
31 | #include <asm/blackfin.h> | 32 | #include <asm/blackfin.h> |
32 | #if CONFIG_BFIN_KERNEL_CLOCK | 33 | #if CONFIG_BFIN_KERNEL_CLOCK |
33 | #include <asm/mach/mem_init.h> | 34 | #include <asm/mach/mem_init.h> |
@@ -45,10 +46,9 @@ | |||
45 | 46 | ||
46 | #define INITIAL_STACK 0xFFB01000 | 47 | #define INITIAL_STACK 0xFFB01000 |
47 | 48 | ||
48 | .text | 49 | __INIT |
49 | 50 | ||
50 | ENTRY(__start) | 51 | ENTRY(__start) |
51 | ENTRY(__stext) | ||
52 | /* R0: argument of command line string, passed from uboot, save it */ | 52 | /* R0: argument of command line string, passed from uboot, save it */ |
53 | R7 = R0; | 53 | R7 = R0; |
54 | /* Set the SYSCFG register: | 54 | /* Set the SYSCFG register: |
@@ -266,6 +266,7 @@ ENTRY(__stext) | |||
266 | 266 | ||
267 | .LWAIT_HERE: | 267 | .LWAIT_HERE: |
268 | jump .LWAIT_HERE; | 268 | jump .LWAIT_HERE; |
269 | ENDPROC(__start) | ||
269 | 270 | ||
270 | ENTRY(_real_start) | 271 | ENTRY(_real_start) |
271 | [ -- sp ] = reti; | 272 | [ -- sp ] = reti; |
@@ -334,9 +335,10 @@ ENTRY(_real_start) | |||
334 | sp = r1; | 335 | sp = r1; |
335 | usp = sp; | 336 | usp = sp; |
336 | fp = sp; | 337 | fp = sp; |
337 | call _start_kernel; | 338 | jump.l _start_kernel; |
338 | .L_exit: | 339 | ENDPROC(_real_start) |
339 | jump.s .L_exit; | 340 | |
341 | __FINIT | ||
340 | 342 | ||
341 | .section .l1.text | 343 | .section .l1.text |
342 | #if CONFIG_BFIN_KERNEL_CLOCK | 344 | #if CONFIG_BFIN_KERNEL_CLOCK |
@@ -446,6 +448,7 @@ ENTRY(_start_dma_code) | |||
446 | SSYNC; | 448 | SSYNC; |
447 | 449 | ||
448 | RTS; | 450 | RTS; |
451 | ENDPROC(_start_dma_code) | ||
449 | #endif /* CONFIG_BFIN_KERNEL_CLOCK */ | 452 | #endif /* CONFIG_BFIN_KERNEL_CLOCK */ |
450 | 453 | ||
451 | ENTRY(_bfin_reset) | 454 | ENTRY(_bfin_reset) |