Subject: The imx6q suspend/resume is broken on 3.16-rc due to PCIe

From: [email-masked] (Shawn Guo)
Date: Mon, 7 Jul 2014 21:55:03 +0800

On Mon, Jul 07, 2014 at 11:10:51AM +0200, Lucas Stach wrote:
> Hi Shawn,
> 
> Over the weekend I tried to reproduce your problem on a SabreSD board,
> but wasn't able to trigger the issue. 3.16-rc3 with PCIe active works
> just fine over a suspend and resume cycle for me.

That's strange.  In my setup, PCIe support is enabled in kernel and DT,
but I do not have a PCIe device connected to the board.

> 
> One possibly relevant difference is that I've booted with NFSroot, while
> it seems you are using a SATA connected device. Is this right?

I have a SATA disk connected, but did boot with NFSroot.

> If so,
> can you test if it works if you boot from SDcard or the like? This might
> be relevant as PCIe and SATA share some clocks.

I tried to disable SATA support completely, but it doesn't help.

$ echo mem > /sys/power/state
[  410.052595] PM: Syncing filesystems ... done.
[  410.150033] PM: Preparing system for mem sleep
[  410.207963] Freezing user space processes ... (elapsed 0.004 seconds) done.
[  410.219796] Freezing remaining freezable tasks ... (elapsed 0.002 seconds) done.
[  410.230243] PM: Entering mem sleep
[  410.316574] PM: suspend of devices complete after 79.461 msecs
[  410.322498] PM: suspend devices took 0.090 seconds
[  410.332655] PM: late suspend of devices complete after 5.338 msecs

Shawn