forked from luck/tmp_suning_uos_patched
powerpc/book3e: Move doorbell_exception from traps.c to dbell.c
... where it belongs Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
a2e198116f
commit
e3145b387a
@ -41,4 +41,24 @@ void smp_dbell_message_pass(int target, int msg)
|
||||
ppc_msgsnd(PPC_DBELL, PPC_DBELL_MSG_BRDCAST, 0);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
void doorbell_exception(struct pt_regs *regs)
|
||||
{
|
||||
int cpu = smp_processor_id();
|
||||
int msg;
|
||||
|
||||
if (num_online_cpus() < 2)
|
||||
return;
|
||||
|
||||
for (msg = 0; msg < 4; msg++)
|
||||
if (test_and_clear_bit(msg, &dbell_smp_message[cpu]))
|
||||
smp_message_recv(msg);
|
||||
}
|
||||
|
||||
#else /* CONFIG_SMP */
|
||||
void doorbell_exception(struct pt_regs *regs)
|
||||
{
|
||||
printk(KERN_WARNING "Received doorbell on non-smp system\n");
|
||||
}
|
||||
#endif /* CONFIG_SMP */
|
||||
|
||||
|
@ -55,9 +55,6 @@
|
||||
#endif
|
||||
#include <asm/kexec.h>
|
||||
#include <asm/ppc-opcode.h>
|
||||
#ifdef CONFIG_FSL_BOOKE
|
||||
#include <asm/dbell.h>
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_DEBUGGER) || defined(CONFIG_KEXEC)
|
||||
int (*__debugger)(struct pt_regs *regs) __read_mostly;
|
||||
@ -1342,24 +1339,6 @@ void vsx_assist_exception(struct pt_regs *regs)
|
||||
#endif /* CONFIG_VSX */
|
||||
|
||||
#ifdef CONFIG_FSL_BOOKE
|
||||
|
||||
void doorbell_exception(struct pt_regs *regs)
|
||||
{
|
||||
#ifdef CONFIG_SMP
|
||||
int cpu = smp_processor_id();
|
||||
int msg;
|
||||
|
||||
if (num_online_cpus() < 2)
|
||||
return;
|
||||
|
||||
for (msg = 0; msg < 4; msg++)
|
||||
if (test_and_clear_bit(msg, &dbell_smp_message[cpu]))
|
||||
smp_message_recv(msg);
|
||||
#else
|
||||
printk(KERN_WARNING "Received doorbell on non-smp system\n");
|
||||
#endif
|
||||
}
|
||||
|
||||
void CacheLockingException(struct pt_regs *regs, unsigned long address,
|
||||
unsigned long error_code)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user