sh: __cpuinit annotate the CPU init path.

All of the regular CPU init path needs to be __cpuinit annotated for CPU
hotplug.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
Paul Mundt 2010-04-21 12:20:42 +09:00
parent a9079ca0cb
commit 4a6feab0ee
5 changed files with 13 additions and 14 deletions

View 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 */

View 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.
*

View 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();

View 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

View 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);