Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 11610
b: refs/heads/master
c: a9c5926
h: refs/heads/master
v: v3
  • Loading branch information
Paul Mackerras committed Oct 20, 2005
1 parent 7bab8b6 commit c5b81e7
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 24 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d8699e65c6bc0a81b5e679ca5b135bfe3c3fb483
refs/heads/master: a9c59264690aea9d0df2d2d76683bc39ec6b7288
21 changes: 21 additions & 0 deletions trunk/arch/powerpc/sysdev/mpic.c
Original file line number Diff line number Diff line change
Expand Up @@ -904,4 +904,25 @@ void mpic_request_ipis(void)

printk("IPIs requested... \n");
}

void smp_mpic_message_pass(int target, int msg)
{
/* make sure we're sending something that translates to an IPI */
if ((unsigned int)msg > 3) {
printk("SMP %d: smp_message_pass: unknown msg %d\n",
smp_processor_id(), msg);
return;
}
switch (target) {
case MSG_ALL:
mpic_send_ipi(msg, 0xffffffff);
break;
case MSG_ALL_BUT_SELF:
mpic_send_ipi(msg, 0xffffffff & ~(1 << smp_processor_id()));
break;
default:
mpic_send_ipi(msg, 1 << target);
break;
}
}
#endif /* CONFIG_SMP */
22 changes: 0 additions & 22 deletions trunk/arch/ppc64/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,28 +69,6 @@ void smp_call_function_interrupt(void);
int smt_enabled_at_boot = 1;

#ifdef CONFIG_MPIC
void smp_mpic_message_pass(int target, int msg)
{
/* make sure we're sending something that translates to an IPI */
if ( msg > 0x3 ){
printk("SMP %d: smp_message_pass: unknown msg %d\n",
smp_processor_id(), msg);
return;
}
switch ( target )
{
case MSG_ALL:
mpic_send_ipi(msg, 0xffffffff);
break;
case MSG_ALL_BUT_SELF:
mpic_send_ipi(msg, 0xffffffff & ~(1 << smp_processor_id()));
break;
default:
mpic_send_ipi(msg, 1 << target);
break;
}
}

int __init smp_mpic_probe(void)
{
int nr_cpus;
Expand Down
3 changes: 3 additions & 0 deletions trunk/include/asm-powerpc/mpic.h
Original file line number Diff line number Diff line change
Expand Up @@ -273,6 +273,9 @@ extern void mpic_request_ipis(void);
/* Send an IPI (non offseted number 0..3) */
extern void mpic_send_ipi(unsigned int ipi_no, unsigned int cpu_mask);

/* Send a message (IPI) to a given target (cpu number or MSG_*) */
void smp_mpic_message_pass(int target, int msg);

/* Fetch interrupt from a given mpic */
extern int mpic_get_one_irq(struct mpic *mpic, struct pt_regs *regs);
/* This one gets to the primary mpic */
Expand Down
1 change: 0 additions & 1 deletion trunk/include/asm-ppc64/smp.h
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ extern int smt_enabled_at_boot;

extern int smp_mpic_probe(void);
extern void smp_mpic_setup_cpu(int cpu);
extern void smp_mpic_message_pass(int target, int msg);
extern void smp_generic_kick_cpu(int nr);

extern void smp_generic_give_timebase(void);
Expand Down

0 comments on commit c5b81e7

Please sign in to comment.