Messages in this thread | | | Date | Thu, 25 Jun 2015 17:53:09 +0300 | From | Mathias Nyman <> | Subject | Re: [PATCH v5 3/3] usb: xhci: remove stop device and ring doorbell in hub control and bus suspend |
| |
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
| |