Hello,
We have developed a board using the c667x family of DSPs. During testing we have found that the BOOTMODE pin never changes from low to high. Our first prototype uses a 1.0 Silicon, 8-core, 1GHz TMS320C6678 DSP. Bootmode = I2C master mode. Secondary bootmode = Boot Table. The IBL we use for the secondary bootmode is modeled after the IBL used on the C6678 EVM. We are only kick-starting two of the cores. We can see that the first stage bootloader (boot ROM) runs successfully and the second stage bootloader (IBL) runs successfully. But when we run our application software we do not see a 1 on the BOOTCOMPLETE pin as we expect.
Our second prototype uses a 2.0 Silicon, 4-core, 1.25GHz TMS320TCI6604 DSP. Bootmode = PCI end point. Again with this version of the board we can see that the bootloader runs successfully. We are still only kick-starting two of the cores. Again the BOOTCOMPLETE pin stays low. After we load our application software to the DSP through CCS we can read the bootcomplete register. All four of the BCx bits are 0. We can manually write a value of 1 to each of them. If we write all ones then we see the BOOTCOMPLETE pin go high.
From reading the literature it seems like the boot ROM should write 1s to the BCx bits, but that does not seem to be happening.
Can you please tell me: (1) What stage of the software should be setting the BCx bits high: first stage bootloader, second stage bootloader, or application? (2) If it is the boot ROM that should be setting these bits, why isn't it doing so?
Thanks for your help.
-Courtney