Re: Linux xHCI driver problems (reset ep)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Oct 13, 2012 at 12:18:57PM -0400, Alan Stern wrote:
> On Fri, 12 Oct 2012, Yuliya T wrote:
> 
> > Hi Alan,
> > 
> > Thank you for the suggestion.  We independently ended up with the same
> > workaround, but still weren't happy with it.  The problem is we don't
> > want to relinquish access to the device, but to do set-interface, you
> > have to do release interface,
> 
> No, you don't.  It's the other way around: You have to _claim_ the 
> interface before doing a Set-Interface call (although if you haven't 
> claimed the interface already, the Set-Intf call will claim it for you 
> automatically).
> 
> Maybe you're thinking of Set-Configuration.  For that one you _do_ need 
> to release all the interfaces.

I double checked, and calling usb_set_interface for the same alternate
setting that is currently installed will cause the xHCI driver to drop
and re-add the current endpoints.  This should cause the toggle to be
reset for the endpoints.

I suppose the xHCI driver could do the same thing internally: if
usb_reset_endpoint() is called with an endpoint that isn't halted, we
could issue a Configure Endpoint command to drop and re-add the
endpoint.  But we would need to make sure the bandwidth mutex is held,
and I would have to look at whether it would be safe to add mutex
locking calls in usb_hcd_reset_endpoint().

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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux