This question has already been given for x86, however I could not find much about ARM MP cpus like Cortex-A9, Cortex-A15 etc.
More importantly, I want to know if interrupts can occur on a non-primary processor without any configuration, etc.
I am working on software that deals only with the primary processor, so I put the rest in the WFI state, however I do not know how interrupts work on MP-MP. Is it possible that the main processor continues to execute the code and one secondary processor picks it up and goes to the instructions in the vector table and executes this code?
btw here is the code i use to put them in low power mode
uint32_t reg;
__asm__ volatile("mrc p15, 0, %0, c0, c0, 5" : "=r" (reg));
reg &= 0xF;
if(reg > 0)
goto spin;
<code snipped>
spin:
for(;;)
cpu_idle();
source
share