Re: [PATCHv3] dmaengine: cppi41: Fix oops in cppi41_runtime_resume

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Tony Lindgren <tony@xxxxxxxxxxx> [170118 10:15]:
> * Grygorii Strashko <grygorii.strashko@xxxxxx> [170118 10:05]:
> > 
> > 
> > On 01/18/2017 10:53 AM, Tony Lindgren wrote:
> > > Hi,
> > > 
> > > * Bin Liu <b-liu@xxxxxx> [170118 06:26]:
> > >> With this v3, I still get -71 error when a device is plugged to a hub to
> > >> musb. It doesn't happen though if the device is already plugged to the hub
> > >> before attaching the hub to musb.
> > >>
> > >> [  177.579300] usb 1-1: reset high-speed USB device number 2 using musb-hdrc
> > >> [  177.719308] usb 1-1: device descriptor read/64, error -71
> > >> [  178.350297] usb 1-1.1: new high-speed USB device number 4 using musb-hdrc
> > > 
> > > I think the -71 issue is a different regression. I've verified that v4.8.y
> > > does not have this, but v4.9.y does have it.
> > > 
> > > So far the easiest way for me to reproduce the -71 problem is by plugging
> > > a USB drive into a connected hub. If I connect the hub with USB drive already
> > > plugged into the hub, it does not happen.
...

> > Sry, but wouldn't be more simple and safe just to drop PM runtime from this driver,
> > as it is part of musb and musb PM state expected to be handled properly by PM runtime now.
> 
> Well we still need PM runtime in cppi41 to initialize it when it gets
> probed and idle it when not used even if musb modules are not loaded.
> 
> Unfortunately until musb_cppi41.c dma calls are fixed, we can't do
> any sane use counting in cppi41.c without adding timeout handling
> to it.
> 
> > More over, There is another possibility related to the current PM runtime implementation and autosuspend
> > - it might introduce delay between time when musb request desc push and time when cppi will actually
> > put this desc in HW queue if cppi was not active.
> > For example, there might not be -71 error seen if CPPI autosuspend is disabled
> > (cppi is active all the time) before plug-in hub and then USB drive.
> 
> I already checked that. The -71 error seems to be a separate issue.

OK found it. I can make v4.8.17 produce -71 errors with just commit
467d5c980709 ("usb: musb: Implement session bit based runtime PM for
musb-core") applied on top of it. So looks like we're missing some
musb quirk handling for the devctl session bit.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux