> -----Original Message----- > From: Sarah Sharp [mailto:sarah.a.sharp@xxxxxxxxxxxxxxx] > Sent: Saturday, July 17, 2010 2:35 AM > To: Xu, Andiry > Cc: linux-usb@xxxxxxxxxxxxxxx; gregkh@xxxxxxx > Subject: Re: [PATCH 0/9 v7] xHCI: Isoc transfer implementation > > On Fri, Jul 16, 2010 at 05:53:16PM +0800, Xu, Andiry wrote: > > > > > On Fri, Jun 25, 2010 at 04:48:37PM +0800, Andiry Xu wrote: > > > > Thanks. I'll refine the patches and do another 24-hour stress test > > > > before resubmit. > > > > > > > > I got another question. When I'm debugging the PM patches, I found > > that > > > > when hub driver disable a USB3 protocol port and then reset the > > port, it > > > > will transition to a USB2 protocol port. This will affect USB3 > > device > > > > re-initialization during S3 resume. Is this normal behavior? If I do > > not > > > > disable the USB3 protocol port, the USB3.0 device will be recognized > > > > normally later. > > > > > > As I said, I have a patch in the master branch that might fix your > > > issue, so please test that first. However, I also remember that Dong > > > submitted a patch to turn off disabling of USB 3.0 ports. Greg asked > > > him to resend it, but I never saw Dong resend it, and it doesn't seem > > to > > > be in Greg's queue. Is that patch still needed? > > > > > > > I've checked the patch in the master branch. The patch fixed a software > > issue after the port reset. Actually the port is still a USB3 port, but > > the driver falsely detects it. But my issue is to disable a USB3 port, > > then reset it. In this case the H/W will transition the port to a USB2 > > port, which is indicated in the PORTSC register. The only way is to skip > > the disabling. I've not checked the patch you mentioned but I think it > > may be needed. > > Looks like the patch got into 2.6.35-rc1, so it should be on the master > branch (commit 9f0a6cd3ce34de5f9d34b5bf07e1b973a5cd2aa2). Is that the > patch you need? > Commit 9f0a6cd3 modifies hub_activate(), which changes the behavior when bus resumes. But the hub_port_disable() causes me trouble is in hub_port_init(). When the device is failed to be resumed during S3 resume, the port will be disabled and then reset, and the device is re-initialized. That's OK for USB2.0 and USB1.1 device, but USB3.0 device will fail. > Alan Stern and John Yung are discussing port disabling for USB 3.0 hubs, > and some legitimate uses for disabling USB 3.0 ports have come up. So I > don't want totally turn off the ability to disable USB 3.0 ports. I'll > Cc you on the conversation. > Thanks for the info. I don't want to totally turn off disabling USB 3.0 ports, but once you disable it, as far as I know, there is no way to return it to USB3 port, unless you unplug and plug the device. So maybe should do it with caution and only when necessary. Thanks, Andiry -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html