Re: UAS support for hcd without sg support

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

 



hi,

On Mon, Jan 09, 2012 at 03:09:16PM -0500, Alan Stern wrote:
> On Mon, 9 Jan 2012, Sarah Sharp wrote:
> 
> > > It would be nice to have a Kconfig variable (CONFIG_USB_HCD_HAS_SG or
> > > something like that) which would be selected by all the HC drivers
> > > supporting SG, and which UAS would depend on.  That way it would be 
> > > impossible to build the UAS driver on systems where none of the HCDs 
> > > will work with it.
> > 
> > Yes, I think that patch would be good to have.  However, it doesn't help
> > the case where a system has two host controllers, one with driver SG
> > support and one without SG support.  For example, you could have an
> > embedded board with an MUSB host and an xHCI host.  If the user
> > accidentally plugs in their USB 3.0 UAS device into the MUSB port, then
> > the UAS driver can still claim the USB 2.0 UAS device.
> 
> Actually it does help: In that situation, the uas driver can print a 
> warning message telling the user to plug the device into a different 
> controller.  We already do something very much like that when a 
> high-speed-capable device is plugged into a full-speed controller; see 
> check_highspeed() in hub.c.  Is there any way to do the same thing when 
> a SuperSpeed-capable device is plugged into a USB <= 2.0 controller?

you should be able to implement something like that by checking your
Device Capability Descriptor which comes with the BOS descriptor set.

Then you can check wSpeedSuppoted field on that device, if it has the
SuperSpeed bit enabled and you're attached to <=USB_SPEED_HIGH, then you
can warn.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


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

  Powered by Linux