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.

TCI6630K2L: Arm linux and DSP have different configured clock rates: please fix for future developers

Part Number: TCI6630K2L

We are seeing differences in the Linux clock rate software configuration and the DSP clock rate software configuration.

In both cases, it looks like the clock source is set to 122.88 Mhz.

However, the u-boot Linux boot loader uses PLL's that multiply out to 9.75, BUT the DSP gel files and driver code (UART and I2C for example) use PLL's that multiply out to 8.

When our eval board is configured to boot using linux, that means that the system (arm processors and DSP's) are running at just under 1.2 gHz.  This is good.

However, when the eval board is configured to boot into DSP development/CCS debug mode, the DSP's come up running at about 983 mHz.  Furthermore, the default config files for some of the DSP peripherals are set up for 983 mHz CPU clock rate.  This is bad - about 18% slower than the 1.2ghz spec for the K2L maximum processor frequency

This has represented a significant problem in our development efforts with the Keystone.

Why on earth would there be a conflict between the assumed clock rates in the Sys/bios DSP code and the clock rate the system runs at when it boots up in Linux mode??

I would recommend that TI place high priority on fixing this in the Sys/bios software for the K2L.

We ended up deciding to run the entire system at the Linux clock rate.  (PLL numerator of 39, PLL denominators that multiply out to 4, for an aggregate multiplier of 9.75.)

This allows the system to run at close to but not above the spec'd maximum clock rate of 1.2 gHz.

We ended up having to manually change the GEL file that Code Composer Studio uses when debugging DSP code, and also doing manual modifications to peripheral configurations in multiple places.

Our DSP developer did a lot of work getting UART and other peripherals working with the 983 mHz clock rate he was seeing on the Keystone DSP's in debug mode (eval board switches set to 15), and then all of that had to be redone when we started integrating the DSP side with the Linux side, for a system-wide clock rate of 1.19808 Ghz.

Thanks,

Greg Johnson