We have read how to change DDR clock of i.mx6 . Many efforts have been tried according to the thread.
but the u-boot can't start up.
Is the DCD table as defined in the uboot source file "board/freescale/mx6q_sabresd/flash_header.S" my only point for DDR configuration?
By the way, could I change ddr clock after boot ?
When we have moved our DDR config from 528Mhz to 396Mhz, we found it necessary to gather new DDR calibration timings. We ran the NXP DDR Stress tool calibration at 396Mhz and inserted those into our Uboot DCD.
We experienced kernel lockups and other strange behavior until we recalibrated.
Q. Is the DCD table as defined in the uboot source file "board/freescale/mx6q_sabresd/flash_header.S" my only point for DDR configuration?
A. This is the only point to configure DDR at startup time.
Q. By the way, could I change ddr clock after boot ?
A. Yes, it is possible. Please refer to the Sections 2.5.3 "CPU Frequency Scaling (CPUFREQ)" and 2.5.4 "Dynamic Bus Frequency" of the attached document.
Have a great day,
Artur
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Artur,
Thanks for reply.
How to make the DDR's clock root from 400M ? Could you give me some tips?
According to the CCM Clock Tree,we have switched pre_periph_clk from 528M PLL2 to 396M PFD.
And we have adjusted DDR script to make it work at 400M.
But the u-boot can't start up.
What's more, which Reference document are you taking about for the second question ?
We can't find the Sections 2.5.3 "CPU Frequency Scaling (CPUFREQ)" and 2.5.4 "Dynamic Bus Frequency".
Could you kindly tell me which document do you mean?
Have a good day.
Yours sincely.
Hi Artur,
Thanks for reply.
I have made the DDR's clock root from 396M by modify DCD ITEMS successfully.
But the system hangs when kernel is starting.