Commit ccdaa6e0 authored by Vineet Gupta's avatar Vineet Gupta

ARC: [SMP] IPI ACK interface doesn't need "self" cpu-id

The interface is confusing, it feels like we are getting "sender" info,
whereas it is the "receiver", which can very well be retrived by
smp_processor_id(), if need be.
Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
parent ddf84433
...@@ -47,13 +47,13 @@ extern int smp_ipi_irq_setup(int cpu, int irq); ...@@ -47,13 +47,13 @@ extern int smp_ipi_irq_setup(int cpu, int irq);
* @info: SoC SMP specific info for /proc/cpuinfo etc * @info: SoC SMP specific info for /proc/cpuinfo etc
* @cpu_kick: For Master to kickstart a cpu (optionally at a PC) * @cpu_kick: For Master to kickstart a cpu (optionally at a PC)
* @ipi_send: To send IPI to a @cpu * @ipi_send: To send IPI to a @cpu
* @ips_clear: To clear IPI received by @cpu at @irq * @ips_clear: To clear IPI received at @irq
*/ */
struct plat_smp_ops { struct plat_smp_ops {
const char *info; const char *info;
void (*cpu_kick)(int cpu, unsigned long pc); void (*cpu_kick)(int cpu, unsigned long pc);
void (*ipi_send)(int cpu); void (*ipi_send)(int cpu);
void (*ipi_clear)(int cpu, int irq); void (*ipi_clear)(int irq);
}; };
/* TBD: stop exporting it for direct population by platform */ /* TBD: stop exporting it for direct population by platform */
......
...@@ -310,7 +310,7 @@ irqreturn_t do_IPI(int irq, void *dev_id) ...@@ -310,7 +310,7 @@ irqreturn_t do_IPI(int irq, void *dev_id)
unsigned long ops; unsigned long ops;
if (plat_smp_ops.ipi_clear) if (plat_smp_ops.ipi_clear)
plat_smp_ops.ipi_clear(cpu, irq); plat_smp_ops.ipi_clear(irq);
/* /*
* XXX: is this loop really needed * XXX: is this loop really needed
......
...@@ -93,9 +93,9 @@ static void iss_model_ipi_send(int cpu) ...@@ -93,9 +93,9 @@ static void iss_model_ipi_send(int cpu)
idu_irq_assert(cpu); idu_irq_assert(cpu);
} }
static void iss_model_ipi_clear(int cpu, int irq) static void iss_model_ipi_clear(int irq)
{ {
idu_irq_clear(IDU_INTERRUPT_0 + cpu); idu_irq_clear(IDU_INTERRUPT_0 + smp_processor_id());
} }
void iss_model_init_early_smp(void) void iss_model_init_early_smp(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment