diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2018-05-02 11:21:06 +0200 |
---|---|---|
committer | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2021-01-27 20:00:47 +0200 |
commit | 4eb62aed00bd9974d0e03952ce954dada1c66e3e (patch) | |
tree | e75ffc80739e018cba27493a8c582ffdd10678db /arch/arm/mach-imx | |
parent | fab840a416bdc689254f382921287f1bc274e8b5 (diff) |
arm: imx: gpc: do not poweroff M/F mix in suspend
The Colibri iMX6ULL 256MB crashes in resume if the M/F mix domain is
powered down when suspending.
With this workaround this does not happen.
Crash looks as follows:
root@colibri-imx6ull:~# echo +3 > /sys/class/rtc/rtc1/wakealarm; echo mem > /sys/power/state
[ 52.800741] PM: Syncing filesystems ... done.
[ 52.856715] Freezing user space processes ... (elapsed 0.001 seconds) done.
[ 52.865669] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[ 52.875024] Suspending console(s) (use no_console_suspend to debug)
[ 52.950638] PM: suspend of devices complete after 68.211 msecs
[ 52.952506] PM: late suspend of devices complete after 1.835 msecs
[ 52.954292] PM: noirq suspend of devices complete after 1.757 msecs
[ 52.954300] Disabling non-boot CPUs ...
[ 52.954307] Turn off M/F mix!
[ 52.955663] PM: noirq resume of devices complete after 1.222 msecs
[ 52.956767] imx-sdma 20ec000.sdma: loaded firmware 3.3
[ 52.957669] PM: early resume of devices complete after 1.411 msecs
[ 52.959140] gpmi-nand 1806000.gpmi-nand: use legacy bch geometry
[ 53.005653] Suspended for 2.907 seconds
[ 53.012207] PM: resume of devices complete after 54.507 msecs
[ 53.073751] Restarting tasks ... done.
root@colibri-imx6ull:~# [ 55.049753] gpmi-nand 1806000.gpmi-nand: DMA timeout, last DMA :2
[ 55.056377] gpmi-nand 1806000.gpmi-nand: Show GPMI registers :
[ 55.062835] gpmi-nand 1806000.gpmi-nand: offset 0x000 : 0x00000000
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit 42adf593bd4eb47fe0929301558398a1ec8b3cf7)
Diffstat (limited to 'arch/arm/mach-imx')
-rw-r--r-- | arch/arm/mach-imx/gpc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/gpc.c b/arch/arm/mach-imx/gpc.c index 838d93381c07..d4461648b8e9 100644 --- a/arch/arm/mach-imx/gpc.c +++ b/arch/arm/mach-imx/gpc.c @@ -150,6 +150,7 @@ unsigned int imx_gpc_is_mf_mix_off(void) static void imx_gpc_mf_mix_off(void) { +#if 0 int i; for (i = 0; i < IMR_NUM; i++) @@ -160,6 +161,7 @@ static void imx_gpc_mf_mix_off(void) pr_info("Turn off M/F mix!\n"); /* turn off mega/fast mix */ writel_relaxed(0x1, gpc_base + GPC_PGC_MF_PDN); +#endif } void imx_gpc_set_arm_power_up_timing(u32 sw2iso, u32 sw) |