Blackfin arch: move more of our startup code to .init so it can be freed once we...
[linux-2.6.git] / arch / blackfin / kernel / setup.c
index b6ac6f8..d9517e7 100644 (file)
@@ -43,6 +43,8 @@
 #include <asm/blackfin.h>
 #include <asm/cplbinit.h>
 
+u16 _bfin_swrst;
+
 unsigned long memory_start, memory_end, physical_mem_end;
 unsigned long reserved_mem_dcache_on;
 unsigned long reserved_mem_icache_on;
@@ -88,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;
@@ -381,6 +383,12 @@ void __init setup_arch(char **cmdline_p)
        if (l1_length > L1_DATA_A_LENGTH)
                panic("L1 memory overflow\n");
 
+#ifdef BF561_FAMILY
+       _bfin_swrst = bfin_read_SICA_SWRST();
+#else
+       _bfin_swrst = bfin_read_SWRST();
+#endif
+
        bf53x_cache_init();
 
        printk(KERN_INFO "Hardware Trace Enabled\n");
@@ -403,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))
@@ -673,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;
@@ -881,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);
 }