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

Hong-Xing.Zhu at freescale.com Hong-Xing.Zhu at freescale.com
Thu Jul 17 19:11:19 PDT 2014


> -----Original Message-----
> From: Lucas Stach [mailto:l.stach at pengutronix.de]
> Sent: Thursday, July 17, 2014 9:55 PM
> To: Guo Shawn-R65073
> Cc: Zhu Richard-R65037; linux-pci at vger.kernel.org; Sascha Hauer; Bjorn Helgaas;
> Shawn Guo; Fabio Estevam; linux-arm-kernel at lists.infradead.org
> 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 at 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 at 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 at XXX:~
> 
> --
> Pengutronix e.K.             | Lucas Stach                 |
> Industrial Linux Solutions   | http://www.pengutronix.de/  |


Best Regards
Richard Zhu



More information about the linux-arm-kernel mailing list