summaryrefslogtreecommitdiffstats
path: root/bsps/arm
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/arm')
-rw-r--r--bsps/arm/raspberrypi/irq/irq.c4
-rw-r--r--bsps/arm/shared/start/arm-a9mpcore-smp.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/bsps/arm/raspberrypi/irq/irq.c b/bsps/arm/raspberrypi/irq/irq.c
index 5b10385bfe..925596ae51 100644
--- a/bsps/arm/raspberrypi/irq/irq.c
+++ b/bsps/arm/raspberrypi/irq/irq.c
@@ -109,7 +109,9 @@ void bsp_interrupt_dispatch(void)
if ( local_source & BCM2836_IRQ_SOURCE_MBOX3 ) {
/* reset mailbox 3 contents to zero */
BCM2835_REG(BCM2836_MAILBOX_3_READ_CLEAR_BASE + 0x10 * cpu_index_self) = 0xffffffff;
- _SMP_Inter_processor_interrupt_handler();
+ _SMP_Inter_processor_interrupt_handler(
+ _Per_CPU_Get_by_index(cpu_index_self)
+ );
}
if ( cpu_index_self != 0 )
return;
diff --git a/bsps/arm/shared/start/arm-a9mpcore-smp.c b/bsps/arm/shared/start/arm-a9mpcore-smp.c
index a8d3a541d4..c2550136f8 100644
--- a/bsps/arm/shared/start/arm-a9mpcore-smp.c
+++ b/bsps/arm/shared/start/arm-a9mpcore-smp.c
@@ -22,7 +22,7 @@
static void bsp_inter_processor_interrupt(void *arg)
{
- _SMP_Inter_processor_interrupt_handler();
+ _SMP_Inter_processor_interrupt_handler(_Per_CPU_Get());
}
uint32_t _CPU_SMP_Initialize(void)