> -----Original Message----- > From: Lucas Stach [mailto:l.stach@xxxxxxxxxxxxxx] > Sent: Thursday, July 17, 2014 9:55 PM > To: Guo Shawn-R65073 > Cc: Zhu Richard-R65037; linux-pci@xxxxxxxxxxxxxxx; Sascha Hauer; Bjorn Helgaas; > Shawn Guo; Fabio Estevam; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Subject: Re: The imx6q suspend/resume is broken on 3.16-rc due to PCIe > > Hi Shawn, > > Am Mittwoch, den 16.07.2014, 14:55 +0800 schrieb Shawn Guo: > > On Mon, Jul 07, 2014 at 09:55:03PM +0800, Shawn Guo wrote: > > > 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. > > > > Lucas, any news on this? Or should we just try to use Richard's patch > > to solve the problem? > > I would like to understand the problem first before throwing "fixes" at the > issue. As you said this isn't a regression we are in no hurry and should try > to analyze the issue properly. I just retested and I'm still not able to > reproduce the issue on my SabreSD. Maybe there are board revision that exhibit > different behavior? My board has two sticks on saying "Rev B3" and "Rev X3". > > As you can see from the log suspend/resume is working fine for me with kernel > 3.16-rc5 + imx_v6_v7_defconfig. [Richard] As I know that imx6 pcie is not enabled in imx_v6_v7_defconfig in default. Menu-config is required if you want to tests system suspend/resume with pcie built-in. Just double confirm, is the pcie built-in at your side? > > root@XXX:~ echo mem > /sys/power/state > PM: Syncing filesystems ... done. > Freezing user space processes ... (elapsed 0.004 seconds) done. > Freezing remaining freezable tasks ... (elapsed 0.002 seconds) done. > Suspending console(s) (use no_console_suspend to debug) > PM: suspend of devices complete after 95.846 msecs > PM: suspend devices took 0.100 seconds > PM: late suspend of devices complete after 5.395 msecs > PM: noirq suspend of devices complete after 4.914 msecs Disabling non-boot > CPUs ... > CPU1: shutdown > CPU2: shutdown > CPU3: shutdown > Enabling non-boot CPUs ... > CPU1: Booted secondary processor > CPU1 is up > CPU2: Booted secondary processor > CPU2 is up > CPU3: Booted secondary processor > CPU3 is up > PM: noirq resume of devices complete after 1556.385 msecs > PM: early resume of devices complete after 3.134 msecs > PM: resume of devices complete after 153.568 msecs > PM: resume devices took 0.160 seconds > Restarting tasks ... done. > ata1: SATA link down (SStatus 0 SControl 300) fec 2188000.ethernet eth0: Link > is Down fec 2188000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off > root@XXX:~ echo mem > /sys/power/state > PM: Syncing filesystems ... done. > Freezing user space processes ... (elapsed 0.002 seconds) done. > Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done. > Suspending console(s) (use no_console_suspend to debug) > PM: suspend of devices complete after 87.638 msecs > PM: suspend devices took 0.090 seconds > PM: late suspend of devices complete after 4.528 msecs > PM: noirq suspend of devices complete after 5.031 msecs Disabling non-boot > CPUs ... > CPU1: shutdown > CPU2: shutdown > CPU3: shutdown > Enabling non-boot CPUs ... > CPU1: Booted secondary processor > CPU1 is up > CPU2: Booted secondary processor > CPU2 is up > CPU3: Booted secondary processor > CPU3 is up > PM: noirq resume of devices complete after 1425.302 msecs > PM: early resume of devices complete after 2.736 msecs > PM: resume of devices complete after 156.013 msecs > PM: resume devices took 0.160 seconds > Restarting tasks ... done. > ata1: SATA link down (SStatus 0 SControl 300) fec 2188000.ethernet eth0: Link > is Down fec 2188000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off > root@XXX:~ > > -- > Pengutronix e.K. | Lucas Stach | > Industrial Linux Solutions | http://www.pengutronix.de/ | Best Regards Richard Zhu ��.n��������+%������w��{.n�����{���"�)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥