Hi all
I have issue and questions about MMDC Linux driver in BSP L4.9.11.
It is a problem that a running CPU stops suddenly.
Of course it is possible to recover with the WDT, but I want to find out the cause.
Break down the issue into parts, I found that the issue is DDR and CPU communication.
Then I tested with DDR Stress Test V2.8 and it passed.
On the other hand, the Read/Write test with Linux failed.
As a result, I guess something is wrong with the Linux driver.
Could you teach me following questions ?
Q1.
In my understanding, all of the process and sequence in the drivers are based on the completion flag.
Am I correct ?
Q2.
I konw that the characteristics of the LSI changes with temperature.
Is the driver of the evaluation board made assuming about low and high temperature condition as well ?
Q3.
Is there a possibility of deviating from the timing spec described in the data sheet at low and high temperature ?
Ko-hey
Hello,
Please verify memory initialization parameters for Linux - if they
are the same as for the DDR Stress test. Difference between initialization
parameters may cause the problem with memory in Linux. Let me remind,
initialization parameters for the Stress test are located in \script directory.
For Linux - in the DCD table of U-boot. Look at Chapter 3 (Porting U-Boot )
of “i.MX_BSP_Porting_Guide.pdf”.
https://www.nxp.com/webapp/Download?colCode=L4.9.11_1.0.0_LINUX_DOCS
Note, there is no special MMDC Linux driver in BSP. System memory should be just
initialized (in U-boot). Nothing more.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Yuri Muhin
Do the initialization parameters which you mentioned mean MMDC register settings ?
Ko-hey
Hello,
Correct, I mean mainly MMDC register settings.
Regards,
Yuri.
Hello,
All boards, temperature, environment conditions should be taken into considerations
when calibrating, testing memory, say with the DDR Stress - so that average values
for memory parameters be used during memory initialization; assuming ZQ may be
implemented automatically in real time. Linux in itself does not perform activities for it.
Regards,
Yuri.