AnsweredAssumed Answered

ROM API Flags demo code

Question asked by scottw on Oct 25, 2015
Latest reply on Nov 3, 2015 by scottw

So I'm trying to work through the booting demos and I have some questions about #4 - The ROM API Flags demo. I think it's just some clarification in the documentation that I need.


The readme.txt file says the following:


Program any multi-core boot stream to sector 0 of the flash

a. Load the code 'Hook_Function_Core0' to the Cortex-A5 Core0 and run it. - All three cores blink LEDs

b. Load the code 'Return_Flag_Core0' to the Cortex-A5 Core0 and run it. - Only the LEDs corresponding to SHARC+ cores (LED11 and LED12) toggle


If I read this literally, it seems a little magical. So if I'm understanding correctly, "Program any multi-core boot stream to sector 0" really means: Program a multicore stream to sector 0 that includes LED blink code on all three cores, such as one generated in the #2 Loader Streams demo?


Then, (and only then) Hook_Function_Core0 will load a bootstream from SPI onto all three cores, causing all three LEDs to blink.


Similarly, Return_Flag_Core0 will load the same multicore bootstream, but ignore the Core0 part of the stream and only boot Core1 and Core2?


Continuing, if I really programmed flash sector 0 with "any" multicore stream, then instead of blinking, it would load whichever code I put in and only load into cores 1 and 2... Ultimately this is what I'm looking for. To be able to boot/reboot the DSP cores from the ARM core based on user input via the ARM.


Thanks for any clarification you may be able to provide.