Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[sfrench/cifs-2.6.git] / arch / mips / kernel / smp-mt.c
index b8fa7ddd78f6d76b0aae3aefc7b99966fc08db65..94e210cc6cb6725675389ba84d190c97d63be789 100644 (file)
@@ -236,8 +236,6 @@ void __init plat_smp_setup(void)
        dvpe();
        dmt();
 
-       mips_mt_set_cpuoptions();
-
        /* Put MVPE's into 'configuration state' */
        set_c0_mvpcontrol(MVPCONTROL_VPC);
 
@@ -263,6 +261,8 @@ void __init plat_smp_setup(void)
 
 void __init plat_prepare_cpus(unsigned int max_cpus)
 {
+       mips_mt_set_cpuoptions();
+
        /* set up ipi interrupts */
        if (cpu_has_vint) {
                set_vi_handler(MIPS_CPU_IPI_RESCHED_IRQ, ipi_resched_dispatch);
@@ -287,7 +287,7 @@ void __init plat_prepare_cpus(unsigned int max_cpus)
  * (unsigned long)idle->thread_info the gp
  * assumes a 1:1 mapping of TC => VPE
  */
-void prom_boot_secondary(int cpu, struct task_struct *idle)
+void __cpuinit prom_boot_secondary(int cpu, struct task_struct *idle)
 {
        struct thread_info *gp = task_thread_info(idle);
        dvpe();
@@ -321,7 +321,7 @@ void prom_boot_secondary(int cpu, struct task_struct *idle)
        evpe(EVPE_ENABLE);
 }
 
-void prom_init_secondary(void)
+void __cpuinit prom_init_secondary(void)
 {
        /* Enable per-cpu interrupts */
 
@@ -330,7 +330,7 @@ void prom_init_secondary(void)
                        (STATUSF_IP0 | STATUSF_IP1 | STATUSF_IP6 | STATUSF_IP7));
 }
 
-void prom_smp_finish(void)
+void __cpuinit prom_smp_finish(void)
 {
        write_c0_compare(read_c0_count() + (8* mips_hpt_frequency/HZ));
 
@@ -353,7 +353,7 @@ void core_send_ipi(int cpu, unsigned int action)
        unsigned long flags;
        int vpflags;
 
-       local_irq_save (flags);
+       local_irq_save(flags);
 
        vpflags = dvpe();       /* cant access the other CPU's registers whilst MVPE enabled */