This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I have been reading through a number of TI documents and forum posts over the last week, and during that time I have learned a lot about how to boot Keystone multicore devices. I have a specific question regarding how one might boot a MAD image from memory (e.g., NOR flash) using the ROM bootloader (RBL) and without using any sort of secondary bootloader (IBL).
As I understand it, the image that will be processed by the RBL consists of a boot parameter table followed by a boot table that contains the boot image. The romparse utility can be used to combine a boot parameter table and boot table into the final image that is burned to flash.
My question is -- how does one convert a MAD image (created using maptool.py) into the boot table format so that it can be processed by romparse?
Thanks in advance for your assistance!
Best regards,
Dave
Hi Dave,
There are specific bootmodes on the C6678 for which you may still require the IBL like PCIE but for master NAND, SPI and I2C boot you can boot the image directly from the boot ROM. The IBL expects the boot image the same way as the RBL so you should be able to flash the image on your board the same way as you have been doing on the EVM. On the EVM there is an FPGA firmware that forces the device to execute the IBL to proceed to boot from a specific boot media so you cant try this on an EVM but on your custom hardware.
For SPI NOR, follow the instructions given here (other than first 2 steps that refer to IBL configuration) :
Regards
Rahul
Rahul, I'm sorry it has taken me so long to reply here; I finally got back to looking at this a couple of days ago. I have been successful in booting a MAD image from NOR flash on the TMDSEVM6678L without using an intermediate bootloader. I wanted to report the procedure here in case it might be of use to someone else.
Objective: Boot a MAD image on the TMDSEVM6678L eval board with the boot mode DIP switches set for "ROM SPI Boot". This boot mode does not use an intermediate bootloader (IBL).
Procedure:
Create a MAD image according to the information provided in the "Multicore Application Deployment (MAD) Utilities User's Guide" wiki page. In my case, I created an image using Prelinker Bypass mode that deployed two separate applications on cores 0 and 1. At the end of the process, you will invoke the MAP tool (maptool.py) to create an output image BIN file. This BIN file contains a load image in ROMFS binary format; this is what I refer to as the "MAD image."
I hope this information helps someone on their adventure to learn the KeyStone bootloader!
Hi Rajasekaran K, Butters,
im following your steps but got stuck at point 4.
Im able to generate .bin file from MAD utility and verified through CCS also.
But in order to add DDR initialization data what i have done converted .bin file in ascii hex file then made .btbl and finally used b2i2c.exe utilty to get .btbl.i2c but got wrong .btbl.i2c file.
pls check this post,
C6678: btbl to btbl.i2c conversion problem!! - Processors forum - Processors - TI E2E support forums
could you pls help me to figure out where i did mistake.
Thanks in advance.
regards,
Gourav