aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/kernel.h
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2013-02-15 09:52:06 -0500
committerDavid S. Miller <davem@davemloft.net>2013-02-20 16:36:50 -0500
commitf9fd3488f6a3c2c5cc8613e4fd7fbbaa57f6bf8f (patch)
treedfc2f084424f34f257dcca83d495bf216dcdfd2b /arch/sparc/kernel/kernel.h
parent76968ad2eac6456270353de168b21f04f4b3d1d3 (diff)
sparc32: refactor smp boot
Introduce a common smp_callin() function to call from trampoline_32.S. Add platform specific functions to handle the platform details. This is in preparation for a patch that will unify the smp boot stuff for all architectures. sparc32 was significantly different to warrant this patch in preparation. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Acked-by: David S. Miller <davem@davemloft.net> Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com> Acked-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel/kernel.h')
-rw-r--r--arch/sparc/kernel/kernel.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/sparc/kernel/kernel.h b/arch/sparc/kernel/kernel.h
index 291bb5de9ce0..a702d9ab019c 100644
--- a/arch/sparc/kernel/kernel.h
+++ b/arch/sparc/kernel/kernel.h
@@ -48,6 +48,10 @@ extern void sun4m_init_IRQ(void);
48extern void sun4m_unmask_profile_irq(void); 48extern void sun4m_unmask_profile_irq(void);
49extern void sun4m_clear_profile_irq(int cpu); 49extern void sun4m_clear_profile_irq(int cpu);
50 50
51/* sun4m_smp.c */
52void sun4m_cpu_pre_starting(void *arg);
53void sun4m_cpu_pre_online(void *arg);
54
51/* sun4d_irq.c */ 55/* sun4d_irq.c */
52extern spinlock_t sun4d_imsk_lock; 56extern spinlock_t sun4d_imsk_lock;
53 57
@@ -60,6 +64,14 @@ extern int show_sun4d_interrupts(struct seq_file *, void *);
60extern void sun4d_distribute_irqs(void); 64extern void sun4d_distribute_irqs(void);
61extern void sun4d_free_irq(unsigned int irq, void *dev_id); 65extern void sun4d_free_irq(unsigned int irq, void *dev_id);
62 66
67/* sun4d_smp.c */
68void sun4d_cpu_pre_starting(void *arg);
69void sun4d_cpu_pre_online(void *arg);
70
71/* leon_smp.c */
72void leon_cpu_pre_starting(void *arg);
73void leon_cpu_pre_online(void *arg);
74
63/* head_32.S */ 75/* head_32.S */
64extern unsigned int t_nmi[]; 76extern unsigned int t_nmi[];
65extern unsigned int linux_trap_ipi15_sun4d[]; 77extern unsigned int linux_trap_ipi15_sun4d[];