Hello,
I am working with Android Nougat build.
The kernel version is 4.9.17. and the CPU is Freescale i.MX6D rev1.6 at 792MHz.
The device freezes right after resume, once out of 500 suspend/resume operation,
The last messages are as follow;
PM: suspend of devices complete after 85.648 msecs
PM: suspend devices took 0.090 seconds
PM: late suspend of devices complete after 1.387 msecs
PM: noirq suspend of devices complete after 1.397 msecs
Disabling non-boot CPUs ...
CPU1: shutdown
Resume caused by IRQ 51
Enabling non-boot CPUs ...
CPU1 is up
PM: noirq resume of devices complete after 0.930 msecs
PM: early resume of devices complete after 0.722 msecs
CPU1: update max cpu_capacity 1024
--- after this, the device reset with WDOG time out ---
Have you guys seen any issue like this before ? And having any fix to try ?
Thanks and Regards,
Taehyuk Kwon
Hi Taehyuk
in this case may be recommended to recheck ddr settings: try latest RPA tool
https://community.nxp.com/docs/DOC-236354
run ddr test and then rebuild image with new calibration settings found from ddr test
i.MX6/7 DDR Stress Test Tool V3.00
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello Igor,
Thanks for your comments. I am running the calibration and trying to figure out how to apply the values.
I am modifying the bootable/bootloader/uboot-imx/board/freescale/mx6_horizon/mx6q_4x_mt41j128.cfg file. Is the right and the only place to be updated ?
Thanks and Regards,
Taehyuk Kwon
HI Taehyuk
right, also may be useful to check that were used low power drivers as on below link
mach-imx\arm\arch - linux-imx - i.MX Linux kernel
Best regards
igor
Hello Igor,
I have tried the memory calibration. Unfortunately, it does not make any difference.
I narrowed down where the crash happens.
in the file gckVGHARDWARE_SetPowerManagementState, function gckVGHARDWARE_SetPowerManagementState does not return, when it is called with state = gcvPOWER_ON.
It is not always happens. It happens when the resume and suspend are done for about 300 times.
have you seen any similar known issue?
Thanks and Regards,
Taehyuk Kwon