We're developing a proprietary RTOS using several of the cores in a Cortex A9MP processor. We've already run the OS on a single core, and now want to add additional cores. My main question is concerning the cache and MMU initialization for the primary core vs the secondary cores. The sequence for the primary core is:
This is the basic sequence. After this, core 0 is up and running with both L1 and L2 caches enabled. So my question is can I now enable core 1 with the L2 cache enabled, or do I need to bring it up and functional, and then enable the L2 cache? The MMU is set up with flat mapping, and the memory space for each additional core is set to shared so that core 0 can write the OS into it. Each core has the SMP bit set. The MMU table is accessible to all the cores.