Hello!
On our custom board (imx6d + lpddr2, pop-package) we faced with kernel panic after some tome of work. After some reserces I detected that busfreq causes this.
The thing is that before change ddr frequancy, driver (in function "update_lpddr2_freq_smp") compares new freq value with current and if they equals it returns 0. After that driver configures clock parents and if frequancies not configured before it (because update_lpddr2_freq_smp doesn't actually work) system crashes.
Some times in "update_lpddr2_freq_smp" curr_ddr_rate doesn't changes after previous call. Make it volatile not help. If not check curr_ddr_rate - all works perfect.
Why curr_ddr_rate doesn't change sometimes? And do we need curr_ddr_rate if all other work doings unconditionally?
Solved! Go to Solution.
Hi Maxim
please try ddr test and use nxp bsps described on below link
i.MX6/7 DDR Stress Test Tool V2.80
https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_4.1.15_2.0.0_galinux-imx - i.MX Linux kernel
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Maxim
please try ddr test and use nxp bsps described on below link
i.MX6/7 DDR Stress Test Tool V2.80
https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_4.1.15_2.0.0_galinux-imx - i.MX Linux kernel
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Thank you for answer and useful links!
It looks like I found the same solution - update curr_ddr_rate before changing ddr frequency.