Hi TI team,
We are working on a design that uses AM64x and a C2000 DSP on the same board. After Linux boots, we use one of the AM64x UART ports to load firmware to the C2000 DSP. We like this method since it allows the C2000 firmware to be stored on the AM64x eMMC, which is easy to update. However this boot flow takes too long for our application (~15-20 sec for Linux boot on AM64x which delays loading of DSP firmware). We are trying to find a better option that allows us to start loading the C2000 firmware <500ms after POR if possible.
Current method (too slow):
AM64x SPL boot -> U-boot -> Linux boots on A53 -> Linux app reads firmware from eMMC -> Linux app writes firmware to C2000 DSP via UART
Idea for faster DSP load:
Customize SPL to read firmware from eMMC -> SPL loads firmware to C2000 DSP via UART -> SPL branches to U-boot -> Boot Linux on A53s
Questions
1. Is it possible to customize the SPL?
2. Can SPL read the file system on eMMC to find the C2000 firmware (a simple file on eMMC file system)?
3. What is required to enable a UART port in the SPL?
4. If we could create a custom SBL that might be a better option, but as I understand it SBL cannot branch to U-boot SPL as of Processor-SDK v8.00. Is that correct?
5. Is there a better option for "early" access to UART during boot on AM64x?
Thanks!