Messages in this thread | | | Date | Mon, 3 Jun 2019 14:23:03 +0200 | From | Greg KH <> | Subject | Re: [PATCH v11 0/2] usb: xhci: Add Clear_TT_Buffer |
| |
On Mon, Jun 03, 2019 at 06:53:42PM +0800, Jim Lin wrote: > USB 2.0 specification chapter 11.17.5 says "as part of endpoint halt > processing for full-/low-speed endpoints connected via a TT, the host > software must use the Clear_TT_Buffer request to the TT to ensure > that the buffer is not in the busy state". > > In our case, a full-speed speaker (ConferenceCam) is behind a high- > speed hub (ConferenceCam Connect), sometimes once we get STALL on a > request we may continue to get STALL with the folllowing requests, > like Set_Interface. > > Solution is to invoke usb_hub_clear_tt_buffer() to send > Clear_TT_Buffer request to the hub of the device for the following > Set_Interface requests to the device to get ACK successfully. > > The Clear_TT_Buffer request sent to the hub includes the address of > the LS/FS child device in wValue field. usb_hub_clear_tt_buffer() > uses udev->devnum to set the address wValue. This won't work for > devices connected to xHC. > > For other host controllers udev->devnum is the same as the address of > the usb device, chosen and set by usb core. With xHC the controller > hardware assigns the address, and won't be the same as devnum. > > Here we have two patches. > One is to add devaddr in struct usb_device for > usb_hub_clear_tt_buffer() to use. > Another is to invoke usb_hub_clear_tt_buffer() for halt processing.
Why did you resend patch series 11?
> Signed-off-by: Jim Lin <jilin@nvidia.com>
There is nothing to sign off on a 0/X patch :)
thanks,
greg k-h
| |