Hi

On Thu, May 28, 2015 at 01:42:07PM -0400, Alan Stern wrote:
> On Thu, 28 May 2015, Michael Trimarchi wrote:
> 
> > Hi Alan
> > 
> > we are working on a samsung exysnos5430 device and we have some problem
> > during suspend. The only way to solve it seems this patch.
> > We don't really know what could be the problem. Do you have any suggestion
> > to debug it?
> > 
> > diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
> > index c254076..6b01784 100644
> > --- a/drivers/usb/host/ehci-hub.c
> > +++ b/drivers/usb/host/ehci-hub.c
> > @@ -289,14 +289,6 @@ static int ehci_bus_suspend (struct usb_hcd *hcd)
> >  
> >             if (t1 != t2) {
> >                     /*
> > +                    * When suspend bit for PORT 1 is set,
> > +                    * system halts when spin_unlock_irq()
> > +                    * called---> why????
> > +                    */
> 
> You didn't say what your problem was, but I guess your system halts.
> Are you certain the halt occurs when spin_unlock_irq() is called?  Did 
> you put printk statements before and after that statement?  Maybe the 
> halt actually occurs later.
> 
[   97.522145] [c0] hub 1-2:1.0: hub_suspend
[   97.524798] [c0] usb usb2: usb auto-resume
[   97.528805] [c0] usb 1-2: unlink qh256-0001/ddd92700 start 1 [1/0 us]
[   97.535588] [c0] s2m-rtc s2m-rtc: s2m_rtc_read_time: 2015-05-29 
12:48:36(0x20)PM
[   97.542667] [c0] exynos-ohci 15520000.usb: resume root hub
[   97.548063] [c0] usb 1-2: usb suspend, wakeup 0
[   97.552730] [c0] hub 1-0:1.0: hub_suspend
[   97.556862] [c0] s2m-rtc s2m-rtc: s2m_rtc_read_time: 2015-05-29 
12:48:36(0x20)PM
[   97.563950] [c0] usb usb1: bus suspend, wakeup 0
[   97.568541] [c0] s2m-rtc s2m-rtc: s2m_rtc_set_alarm: 2015-05-29 
12:49:16(0x20)PM
[   97.575972] [c0] s5p-ehci 15510000.usb: suspend root hub
[   97.581519] [c0] usb usb1: hcd_bus_suspend: __finished__
it happens later, where is not clear

> I have no idea why suspending port 1 should cause the system to halt.  
> Does the same problem occur with runtime PM?
>

Runtime PM is enabled by the driver of exynos does not support it. I have cross 
check
with mainline but I don't see any important different with my kernel version. 

Michael
 
> Alan Stern
> 
> > +                   if (port == 0 && (t1 & 0x01)) {
> > +                           t2 &= ~PORT_SUSPEND;
> > +                   }
> > +                   /*
> >                      * On some controllers, Wake-On-Disconnect will
> >                      * generate false wakeup signals until the bus
> >                      * switches over to full-speed idle.  For their
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to