Boot.SPLLFMULT = Boot.Fract_0;
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.
Hi,
The bug identified in this post (e2e.ti.com/.../1259579) is present in the kernel version shipped in TI-RTOS 2.10.1.38. It is likely that your app is crashing at higher frequencies because the wait states are incorrectly programmed due to the bug.
You can try downloading the latest SYS/BIOS kernel which has the fix and update your project to use it.
Step1: Download SYS/BIOS 6.41.02 release.
Step2: Once the product is downloaded and installed, click on your project and open project properties.
Step3: In "General" window's "RTSC" view, click on "Add" and point to the installed 6.41.02 release.
Step4: Open "Order" view (next to "Products and Repositories" view) in the "General"->"RTSC" page and move the recently added entry to the top. Make sure it is above the currently installed SYS/BIOS product (that came with TI-RTOS). Once this is done, the newly installed SYS/BIOS kernel will be used instead of the one that came with TI-RTOS.
Once the above steps are complete, try configuring the Boot module again (to run the core at 200MHz) and rebuild your example project.
Hope this helps.
Best,
Ashish
Ashish,
Thank you for your response.
I followed your instructions and am now able to run the MCU at 200 MHz from the external 20 MHz crystal using these settings:
BIOS.cpuFreq.lo = 200000000;
var Boot = xdc.useModule('ti.catalog.c2800.initF2837x.Boot');
Boot.bootCPU2 = false;
Boot.configureClocks = true;
Boot.OSCCLK = 20;
Boot.SPLLIMULT = 20;
Boot.SPLLFMULT = Boot.Fract_0;
Boot.SYSCLKDIVSEL = 1;
var Reset = xdc.useModule('xdc.runtime.Reset');
Reset.fxns[Reset.fxns.length++] = '&ResetHook';
With the following reset hook:
Void ResetHook(Void)
{
EALLOW;
ClkCfgRegs.CLKSRCCTL1.bit.XTALOFF=0; // Turn on XTALOSC
ClkCfgRegs.CLKSRCCTL1.bit.OSCCLKSRCSEL = 1; // Clk Src = XTAL
EDIS;
}
Regards,
Beat