Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-29 Thread Alan Stern
On Thu, 29 Nov 2012, Sarah Sharp wrote: > > It is driver-specific. (For example, under certain rare conditions > > uhci-hcd needs to poll for wakeup events while the controller is > > suspended.) The USB core does not automatically stop polling when the > > root hub is suspended; you have to

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-29 Thread Sarah Sharp
On Tue, Nov 27, 2012 at 04:36:41PM -0500, Alan Stern wrote: > On Tue, 27 Nov 2012, Sarah Sharp wrote: > > > Do I need to stop the polling when the host controller is suspended and > > restart it when it's resumed? It seems like OHCI does that, but I can't > > tell if it's host-specific. Or will

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-27 Thread Alan Stern
On Tue, 27 Nov 2012, Sarah Sharp wrote: > Do I need to stop the polling when the host controller is suspended and > restart it when it's resumed? It seems like OHCI does that, but I can't > tell if it's host-specific. Or will the USB core just take care of > stopping and restarting the hub timer

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-27 Thread Sarah Sharp
On Mon, Nov 26, 2012 at 01:35:46PM -0500, Alan Stern wrote: > On Mon, 26 Nov 2012, Sarah Sharp wrote: > > > > Is port-disabling the only place where this problem occurs? > > > > Probably not. > > > > > A more defensive approach would be to copy what ohci-hcd does. When a > > > port-change inter

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-26 Thread Alan Stern
On Mon, 26 Nov 2012, Sarah Sharp wrote: > > Is port-disabling the only place where this problem occurs? > > Probably not. > > > A more defensive approach would be to copy what ohci-hcd does. When a > > port-change interrupt occurs, the driver switches over to polling for > > root-hub status cha

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-26 Thread Sarah Sharp
On Fri, Nov 23, 2012 at 12:55:29PM -0500, Alan Stern wrote: > On Wed, 21 Nov 2012, Sarah Sharp wrote: > > > The USB core disables the USB 2.0 ports in several different error > > cases. It expects that all USB hubs will act like external hubs, and > > always return an interrupt event if a port ch

Re: [RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-23 Thread Alan Stern
On Wed, 21 Nov 2012, Sarah Sharp wrote: > The USB core disables the USB 2.0 ports in several different error > cases. It expects that all USB hubs will act like external hubs, and > always return an interrupt event if a port change bit is set. External > USB 2.0 and USB 3.0 hubs are level-trigge

[RFC 3/8] xHCI: Clear all USB 2.0 change bits on port disable.

2012-11-22 Thread Sarah Sharp
The USB core disables the USB 2.0 ports in several different error cases. It expects that all USB hubs will act like external hubs, and always return an interrupt event if a port change bit is set. External USB 2.0 and USB 3.0 hubs are level-triggered, so this works for them. However, xHCI rooth