lkml.org 
[lkml]   [2015]   [Jun]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [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





\
 
 \ /
  Last update: 2015-06-25 17:21    [W:0.078 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site