Hi
We have a custom imx6q board which running modified android 4.4.3/5.x ga bsp (kernel 3.10.53, 3.14.28).
Some issue have found during long time suspend/resume test, so we use pm_test (core, 5 seconds suspend, 5 seconds resume) to speed up to duplicate the issues.
1. POR/WDG reset: after suspend/resume loops (1 days~3days), system will hang without any kernel / logcat message randomly, then system will reset after watchdog timeout, the uboot shows the reset cause is wdog, if we connect wdog pin to pmic, the reset casue will become POR. The issue can be found on sabresd-sdb with original bsp (POR, WDOG if remove wdog to pmic pin), add some code to reset wdog periodically can solve the issue. so we re-porting a clean bsp, only modify necessary drivers ( DDR/LCD/some GPIOS), but the issue is still exist.
2.sdhc failure: the sdhc failure is also found during suspend/resume test for all sdhc devices (MMC,WIFI,...), the fail message is timeout, and the system also reboot after watchdog timeout.
Hope someone can share experience related to solve those issue, thanks.
Andy
Hi Andy,
Is the issue got fixed ? I am facing this similar kind of issue.
Regards
Vijay
Hi Andy
please refer to attached Release Notes Suspend/Resume issues
Table 15. Known issues and workarounds specifically for i.MX 6Dual/6Quad SABRE-SD
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
We remove the R216 (2.2M ohm resistor, blue one) as the release note mentioned ( our sabresd board is rev C4), the suspend/resume POR/WDG reset still exist, it always reboot after few suspend/resume loops (pm_test, see following log), If we remove the WDOG_B, the reset cause in uboot shows WDOG, not POR.
There is a watchdogd in android to reset watchdog timer, but for pm_test, we have to add watchdog reset in kernel driver every suspend/resume cycle, then this failure rate can be reduced ( few minute to several days ), but even the watchdog is reset, it is possible system will hang after resume.
The same failure is found both on sabresd and our board, so we think there is another root cause make system resume hang and cause watchdog reset.
Regards,
Andy
===========================================================
PM: noirq resume of devices complete after 0.291 msecs
PM: early resume of devices complete after 0.375 msecs
PM: resume of devices complete after 93.833 msecs
PM: resume devices took 0.100 seconds
Restarting tasks ... done.
PM: suspend exit 1970-01-02 00:01:12.012430000 UTC
PM: suspend entry 1970-01-02 00:01:12.017042667 UTC
Freezing user space processes ... (elapsed 0.001 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
21f4000.serial: ttymxc4: Unable to drain transmitter
PM: suspend of devices complete after 117.986 msecs
PM: suspend devices took 0.120 seconds
PM: late suspend of devices complete after 0.450 msecs
PM: noirq suspend of devices complete after 0.584 msecs
Disabling non-boot CPUs ...
CPU1: shutdown
CPU2: shutdown
CPU3: shutdown
suspend debug: Waiting for 5 seconds.
Suspended for 0.000 seconds
Enabling non-boot CPUs ...
CPU1 is up
CPU2 is up
CPU3 is up
PM: noirq resume of devices complete after 0.297 msecs
PM: early resume of devices complete after 0.378 msecs
PM: resume of devices complete after 93.948 msecs
PM: resume devices took 0.100 seconds
Restarting tasks ... done.
PM: suspend exit 1970-01-02 00:01:16.013728000 UTC
PM: suspend entry 1970-01-02 00:01:16.018281000 UTC
Freezing user space processes ... (elapsed 0.001 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.003 seconds) done.
21f4000.serial: ttymxc4: Unable to drain transmitter
PM: suspend of devices complete after 121.997 msecs
PM: suspend devices took 0.130 seconds
PM: late suspend of devices complete after 0.464 msecs
PM: noirq suspend of devices complete after 0.587 msecs
Disabling non-boot CPUs ...
CPU1: shutdown
CPU2: shutdown
CPU3: shutdown
suspend debug: Waiting for 5 seconds.
Suspended for 0.000 seconds
Enabling non-boot CPUs ...
CPU1 is up
CPU2 is up
CPU3 is up
PM: noirq resume of devices complete after 0.288 msecs
PM: early resume of devices complete after 0.372 msecs
PM: resume of devices complete after 93.702 msecs
PM: resume devices took 0.100 seconds
Restarting tasks ... done.
PM: suspend exit 1970-01-02 00:01:20.012365000 UTC
active wake lock PowerManagerService.WakeLocks
PM: suspend entry 1970-01-02 00:01:20.039511000 UTC
Freezing user space processes ... (elapsed 0.001 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
21f4000.serial: ttymxc4: Unable to drain transmitter
PM: suspend of devices complete after 120.354 msecs
PM: suspend devices took 0.120 seconds
PM: late suspend of devices complete after 0.461 msecs
PM: noirq suspend of devices complete after 0.583 msecs
Disabling non-boot CPUs ...
CPU1: shutdown
CPU2: shutdown
CPU3: shutdown
suspend debug: Waiting for 5 seconds.
U-Boot 2014.04-08637-gaffa032 (Jan 08 2017 - 17:29:43)
CPU: Freescale i.MX6Q rev1.2 at 792 MHz
CPU: Temperature 31 C, calibration data: 0x59f4e37d
Reset cause: POR
Board: MX6-SabreSD
I2C: ready
DRAM: 1 GiB
MMC: FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
*** Warning - bad CRC, using default environment
No panel detected: default to Hannstar-XGA
Display: Hannstar-XGA (1024x768)
In: serial
Out: serial
Err: serial
Found PFUZE100 deviceid=10,revid=11
check_and_clean: reg 0, flag_set 0
Fastboot: Normal
flash target is MMC:2
Net: FEC [PRIME]
Normal Boot
Hi Andy
please try latest android from
http://www.nxp.com/products/microcontrollers-and-processors/arm-processors/i.mx-applications-process...
Best regards
igor