On 09.05.2015 04:15, Lu Baolu wrote:
> There is no need to call xhci_stop_device() and xhci_ring_device() in
> hub control and bus suspend functions since all device suspend and
> resume have been notified through device_suspend/device_resume interfaces.

I was looking through this code again before sending it forward, and it 
occurred to
me that this might be breaking the PORT_SUSPEND and PORT_SET_LINK_STATE port 
features
for xhci root hub.

In normal use these requests are called by usb core in usb_port_suspend(), 
which 
also now notifies xhci, which makes sure xhci_stop_device() is called. 

But I don't think there is anything preventing an URB to be sent to the xhci 
roothub
with a PORT_SUSPEND or PORT_SET_LINK_STATE port feature request. In this case 
the usb_port_suspend()
is not called, and no notify will stop the device. 

For example hub validation tests might do this

-Mathias



--
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