Firmware version 1.05 is released. In addition to the most significant update, which is the support for the little core (C906@700MHz), the wiringX library is also ready. Grab your DFRobot sensors and start playing with them!
Can OpenSBI boot the dual-core system?
Answer: FSBL initiates the boot process; it does not go through OpenSBI. @AnonymousUser1: FSBL itself already supports dual-core startup, and you can use kernel remoteproc to start the small core’s ELF. @AnonymousUser2: BL2 will first load the FreeRTOS binary from the flash into memory and start the small core. After that, BL2 loads OpenSBI/U-Boot/Kernel to run on the big core. @AnonymousUser3: I previously learned that you can bundle the loader for the small core into the fast_image_mcu region of fip.bin (not exceeding 24k). In this case, during startup, the small core will load this part of the program.
Hi, related to these points in QnA section of your post:
“FSBL itself already supports dual-core startup”
“BL2 will first load the FreeRTOS binary from the flash into memory and start the small core”
I just can not find any line of code do the above steps in the FSBL/BL2 in Milk-V Duo buildroot SDK. I refer to this BL2 file, but it calls to pre-built objects.
Where can I get the full source to to understand how BL2 load the FreeRTOS and wake up the small core?
Is there any document should I look at for better understaning the boot up of dual-core system?