sh: __cpuinit annotate the CPU init path.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 21 Apr 2010 03:20:42 +0000 (12:20 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 21 Apr 2010 03:20:42 +0000 (12:20 +0900)
All of the regular CPU init path needs to be __cpuinit annotated for CPU
hotplug.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/include/asm/processor.h
arch/sh/include/asm/processor_32.h
arch/sh/kernel/cpu/init.c
arch/sh/kernel/head_32.S
arch/sh/kernel/process.c

index c2be22505fee9f108ce715169493308b8f43d60e..26b3f026eec951ebbab031de9df9280edafabb6c 100644 (file)
@@ -102,6 +102,7 @@ struct task_struct;
 
 extern struct pt_regs fake_swapper_regs;
 
+extern void cpu_init(void);
 extern void cpu_probe(void);
 
 /* arch/sh/kernel/process.c */
index 572b4eb094932ca80e9024728a83eedb63fbf9ea..61a445d2d02a84fed1ac5bf1b4effa5d4ddee924 100644 (file)
@@ -27,8 +27,6 @@
 #define CCN_CVR                0xff000040
 #define CCN_PRR                0xff000044
 
-asmlinkage void __init sh_cpu_init(void);
-
 /*
  * User space process size: 2GB.
  *
index ffaa00a2216b3fd24ed3653d2675d9b120efd29b..97661061ff206866acdee52718188091273c206a 100644 (file)
@@ -43,9 +43,9 @@
  * peripherals (nofpu, nodsp, and so forth).
  */
 #define onchip_setup(x)                                        \
-static int x##_disabled __initdata = !cpu_has_##x;     \
+static int x##_disabled __cpuinitdata = !cpu_has_##x;  \
                                                        \
-static int __init x##_setup(char *opts)                        \
+static int __cpuinit x##_setup(char *opts)                     \
 {                                                      \
        x##_disabled = 1;                               \
        return 1;                                       \
@@ -59,7 +59,7 @@ onchip_setup(dsp);
 #define CPUOPM         0xff2f0000
 #define CPUOPM_RABD    (1 << 5)
 
-static void __init speculative_execution_init(void)
+static void __cpuinit speculative_execution_init(void)
 {
        /* Clear RABD */
        __raw_writel(__raw_readl(CPUOPM) & ~CPUOPM_RABD, CPUOPM);
@@ -78,7 +78,7 @@ static void __init speculative_execution_init(void)
 #define EXPMASK_BRDSSLP                (1 << 1)
 #define EXPMASK_MMCAW          (1 << 4)
 
-static void __init expmask_init(void)
+static void __cpuinit expmask_init(void)
 {
        unsigned long expmask = __raw_readl(EXPMASK);
 
@@ -217,7 +217,7 @@ static void detect_cache_shape(void)
                l2_cache_shape = -1; /* No S-cache */
 }
 
-static void __init fpu_init(void)
+static void __cpuinit fpu_init(void)
 {
        /* Disable the FPU */
        if (fpu_disabled && (current_cpu_data.flags & CPU_HAS_FPU)) {
@@ -230,7 +230,7 @@ static void __init fpu_init(void)
 }
 
 #ifdef CONFIG_SH_DSP
-static void __init release_dsp(void)
+static void __cpuinit release_dsp(void)
 {
        unsigned long sr;
 
@@ -244,7 +244,7 @@ static void __init release_dsp(void)
        );
 }
 
-static void __init dsp_init(void)
+static void __cpuinit dsp_init(void)
 {
        unsigned long sr;
 
@@ -276,11 +276,11 @@ static void __init dsp_init(void)
        release_dsp();
 }
 #else
-static inline void __init dsp_init(void) { }
+static inline void __cpuinit dsp_init(void) { }
 #endif /* CONFIG_SH_DSP */
 
 /**
- * sh_cpu_init
+ * cpu_init
  *
  * This is our initial entry point for each CPU, and is invoked on the
  * boot CPU prior to calling start_kernel(). For SMP, a combination of
@@ -295,7 +295,7 @@ static inline void __init dsp_init(void) { }
  * Each processor family is still responsible for doing its own probing
  * and cache configuration in cpu_probe().
  */
-asmlinkage void __init sh_cpu_init(void)
+asmlinkage void __cpuinit cpu_init(void)
 {
        current_thread_info()->cpu = hard_smp_processor_id();
 
index fe0b743881b00eb70cc57a155a7f09635e4d20f8..8c1fc9a9fab238ebe6c4f6c530c371b2888e976a 100644 (file)
@@ -335,7 +335,7 @@ ENTRY(stack_start)
 3:     .long   __bss_start
 4:     .long   _end
 5:     .long   start_kernel
-6:     .long   sh_cpu_init
+6:     .long   cpu_init
 7:     .long   init_thread_union
 
 #ifdef CONFIG_PMB
index 81add9b9ea6eccb8380b685b94fda321b7b63218..4d49c864377783de123f9e4da561f029b8e353b2 100644 (file)
@@ -89,7 +89,7 @@ void arch_task_cache_init(void)
 # define HAVE_SOFTFP   0
 #endif
 
-void init_thread_xstate(void)
+void __cpuinit init_thread_xstate(void)
 {
        if (boot_cpu_data.flags & CPU_HAS_FPU)
                xstate_size = sizeof(struct sh_fpu_hard_struct);