aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-bf533
diff options
context:
space:
mode:
authorMike Frysinger <michael.frysinger@analog.com>2007-06-11 03:31:30 -0400
committerBryan Wu <bryan.wu@analog.com>2007-06-11 03:31:30 -0400
commit52a078120c33b06a9abb721357adaafc3b55b7c1 (patch)
tree5a17d6b1c5c0beb639507d9c54b3c26bd99aa8fc /arch/blackfin/mach-bf533
parent83a5c3e3218f138b1a99f787c76e380d6a6ecec9 (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')
-rw-r--r--arch/blackfin/mach-bf533/head.S13
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/blackfin/mach-bf533/head.S b/arch/blackfin/mach-bf533/head.S
index 33d1f623fe4..7e2aa8d0f44 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
50ENTRY(__start) 51ENTRY(__start)
51ENTRY(__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;
269ENDPROC(__start)
269 270
270ENTRY(_real_start) 271ENTRY(_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: 339ENDPROC(_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;
451ENDPROC(_start_dma_code)
449#endif /* CONFIG_BFIN_KERNEL_CLOCK */ 452#endif /* CONFIG_BFIN_KERNEL_CLOCK */
450 453
451ENTRY(_bfin_reset) 454ENTRY(_bfin_reset)