public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Bryan Wu <bryan.wu@analog.com>
To: torvalds@linux-foundation.org, akpm@linux-foundation.org,
	linux-kernel@vger.kernel.org
Cc: Mike Frysinger <michael.frysinger@analog.com>,
	Bryan Wu <bryan.wu@analog.com>
Subject: [PATCH 13/20] Blackfin arch: move more of our startup code to .init so it can be freed once we are up and running
Date: Mon, 28 May 2007 16:37:48 +0800	[thread overview]
Message-ID: <11803414793116-git-send-email-bryan.wu@analog.com> (raw)
In-Reply-To: <11803414753217-git-send-email-bryan.wu@analog.com>

From: Mike Frysinger <michael.frysinger@analog.com>

Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
---
 arch/blackfin/kernel/setup.c    |   10 +++++-----
 arch/blackfin/mach-bf533/head.S |   13 ++++++++-----
 arch/blackfin/mach-bf537/head.S |   13 ++++++++-----
 arch/blackfin/mach-bf561/head.S |   13 ++++++++-----
 4 files changed, 29 insertions(+), 20 deletions(-)

diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 02dc743..d9517e7 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -90,7 +90,7 @@ void __init bf53x_cache_init(void)
 #endif
 }
 
-void bf53x_relocate_l1_mem(void)
+void __init bf53x_relocate_l1_mem(void)
 {
 	unsigned long l1_code_length;
 	unsigned long l1_data_a_length;
@@ -411,7 +411,7 @@ static int __init topology_init(void)
 subsys_initcall(topology_init);
 
 #if defined(CONFIG_BLKFIN_DCACHE) || defined(CONFIG_BLKFIN_CACHE)
-u16 lock_kernel_check(u32 start, u32 end)
+static u16 __init lock_kernel_check(u32 start, u32 end)
 {
 	if ((start <= (u32) _stext && end >= (u32) _end)
 	    || (start >= (u32) _stext && end <= (u32) _end))
@@ -681,7 +681,7 @@ static void __init generate_cpl_tables(void)
 
 #endif
 
-static inline u_long get_vco(void)
+static u_long get_vco(void)
 {
 	u_long msel;
 	u_long vco;
@@ -889,8 +889,8 @@ struct seq_operations cpuinfo_op = {
 	.show = show_cpuinfo,
 };
 
-void cmdline_init(unsigned long r0)
+void __init cmdline_init(char *r0)
 {
 	if (r0)
-		strncpy(command_line, (char *)r0, COMMAND_LINE_SIZE);
+		strncpy(command_line, r0, COMMAND_LINE_SIZE);
 }
diff --git a/arch/blackfin/mach-bf533/head.S b/arch/blackfin/mach-bf533/head.S
index 33d1f62..7e2aa8d 100644
--- a/arch/blackfin/mach-bf533/head.S
+++ b/arch/blackfin/mach-bf533/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>
@@ -45,10 +46,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:
@@ -266,6 +266,7 @@ ENTRY(__stext)
 
 .LWAIT_HERE:
 	jump .LWAIT_HERE;
+ENDPROC(__start)
 
 ENTRY(_real_start)
 	[ -- sp ] = reti;
@@ -334,9 +335,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
@@ -446,6 +448,7 @@ ENTRY(_start_dma_code)
 	SSYNC;
 
 	RTS;
+ENDPROC(_start_dma_code)
 #endif /* CONFIG_BFIN_KERNEL_CLOCK */
 
 ENTRY(_bfin_reset)
diff --git a/arch/blackfin/mach-bf537/head.S b/arch/blackfin/mach-bf537/head.S
index 3f490bf..7d902bb 100644
--- a/arch/blackfin/mach-bf537/head.S
+++ b/arch/blackfin/mach-bf537/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:
@@ -275,6 +275,7 @@ ENTRY(__stext)
 
 .LWAIT_HERE:
 	jump .LWAIT_HERE;
+ENDPROC(__start)
 
 ENTRY(_real_start)
 	[ -- sp ] = reti;
@@ -343,9 +344,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
@@ -464,6 +466,7 @@ ENTRY(_start_dma_code)
 	SSYNC;
 
 	RTS;
+ENDPROC(_start_dma_code)
 #endif /* CONFIG_BFIN_KERNEL_CLOCK */
 
 ENTRY(_bfin_reset)
diff --git a/arch/blackfin/mach-bf561/head.S b/arch/blackfin/mach-bf561/head.S
index 3029e94..31cbc75 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)
-- 
1.5.2

  parent reply	other threads:[~2007-05-28  8:41 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-28  8:37 [PATCH 00/20] Blackfin update for 2.6.22-rc3 Bryan Wu
2007-05-28  8:37 ` [PATCH 01/20] Blackfin arch: remove defconfig file Bryan Wu
2007-05-28  8:37 ` [PATCH 02/20] Blackfin arch: DMA code minor naming convention fix Bryan Wu
2007-05-28  8:37 ` [PATCH 03/20] Blackfin arch: spelling fixes Bryan Wu
2007-05-28  8:37 ` [PATCH 04/20] Blackfin arch: fix bug ad1836 fails to build properly for BF533-EZKIT Bryan Wu
2007-05-28  8:37 ` [PATCH 05/20] Blackfin arch: all symbols were offset by 4k, since we didn't have the __text label Bryan Wu
2007-05-28  8:37 ` [PATCH 06/20] Blackfin arch: mark our memory init functions with __init so they get freed after init Bryan Wu
2007-05-28  8:37 ` [PATCH 07/20] Blackfin arch: implement a basic /proc/sram file for L1 allocation visibility Bryan Wu
2007-05-28  8:37 ` [PATCH 08/20] Blackfin arch: Add header files for BF548 Bryan Wu
2007-05-28  8:37 ` [PATCH 09/20] Blackfin arch: fixup Blackfin MAINTIANERS team member list Bryan Wu
2007-05-28 11:48   ` Pekka Enberg
2007-05-28 14:33     ` Robin Getz
2007-05-28  8:37 ` [PATCH 10/20] Blackfin arch: scrub old console defines Bryan Wu
2007-05-28  8:37 ` [PATCH 11/20] Blackfin arch: update defconfigs Bryan Wu
2007-05-28  8:37 ` [PATCH 12/20] Blackfin arch: unify differences between our diff head.S files -- no functional changes Bryan Wu
2007-05-28  8:37 ` Bryan Wu [this message]
2007-05-28  8:37 ` [PATCH 14/20] Blackfin arch: add proper ENDPROC() Bryan Wu
2007-05-28  8:37 ` [PATCH 15/20] Blackfin serial driver: hook up our UARTs STP bit with userspaces CMSPAR Bryan Wu
2007-05-28  8:37 ` [PATCH 16/20] Blackfin serial driver: ignore framing and parity errors Bryan Wu
2007-05-28  8:37 ` [PATCH 17/20] Blackfin RTC drivers: update MAINTAINERS information Bryan Wu
2007-05-28  8:37 ` [PATCH 18/20] Blackfin SPI driver: tweak spi cleanup function to match newer kernel changes Bryan Wu
2007-05-28  8:37 ` [PATCH 19/20] Blackfin on-chip watchdog driver Bryan Wu
2007-05-29 17:20   ` Mike Frysinger
2007-05-31 20:17     ` Mike Frysinger
2007-05-28  8:37 ` [PATCH 20/20] binfmt_flat: minimum support for the Blackfin relocations Bryan Wu
2007-05-29 20:59 ` [PATCH 00/20] Blackfin update for 2.6.22-rc3 Linus Torvalds
2007-05-29 23:31   ` Bernd Schmidt
2007-05-30  1:04     ` Linus Torvalds
2007-05-30  2:31   ` Bryan Wu
2007-05-30  2:42     ` Andrew Morton
2007-05-30  2:56       ` Bryan Wu
2007-05-30 13:09   ` Robin Getz
2007-05-30 13:30     ` Sam Ravnborg
2007-05-30 13:48       ` Robin Getz
2007-05-30 15:53     ` Linus Torvalds

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=11803414793116-git-send-email-bryan.wu@analog.com \
    --to=bryan.wu@analog.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michael.frysinger@analog.com \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox