Hi,

Iam using OMAP4430 panda board for my project development. It has ARM Cortex A9 MP Core (CORE-0 & CORE-1) and linux-2.6.38 is used for this. Iam just trying to understand the booting sequence for CORE-1.

As per my understanding the CORE-1 is triggered from wakeup_secondary(void) in arch/arm/mach-omap2/omap-smp.c by issuing "SEV" command

static void __init wakeup_secondary(void)
{

omap_auxcoreboot_addr(virt_to_phys(omap_secondary_ startup));
smp_wmb();

/*
* Send a 'sev' to wake the secondary core from WFE.
* Drain the outstanding writes to memory
*/
dsb_sev();
mb();
}

Kindly clarify my below queries,

1) Whether omap_auxcoreboot_addr() and omap_secondary_startup() is executed by CORE-'0' or CORE-'1'.
2) When & how int __cpuinit __cpu_up(unsigned int cpu) function is called (kernel/smp.c)
3) What's the purpose of __cpu_up() function.

Regards,
Karthi