Re: [PATCH v5 3/3] usb: xhci: remove stop device and ring doorbell in hub control and bus suspend

From: Lu, Baolu
Date: Fri Jun 26 2015 - 00:52:34 EST




On 06/25/2015 10:53 PM, Mathias Nyman wrote:
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.

If that, we can drop this patch. It doesn't impact the other two patches in this patch series.

Thanks,
Baolu

-Mathias



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


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/