Re: [RFC/PATCH 02/12] usb: gadget: change USB version to USB3.0

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

 



On Thu, 7 Apr 2011, Sarah Sharp wrote:

> True, that would work.  But the USB 3.0 devices also need to be able to
> handle things like link power management and function power management.
> I know that USB 3.0 devices won't pass the USB-IF compliance tests if
> they don't handle link PM.  Was that also in Tanya's SuperSpeed gadget
> patchset?

Not that I remember.  On the other hand, the current gadget drivers 
don't even handle USB-2.0 suspend in any reasonable fashion.  The 
problem is that the drivers are, of necessity, forced to be generic -- 
but different platforms will need to handle PM events in a different 
way.

As one simple example, consider a bus-powered gadget.  Somehow the 
gadget driver would have to initiate a system sleep when a USB suspend 
occurred!

> If you don't care about link power management for a first pass, that's
> fine with me.  However, I think the devices should at least be able to
> refuse to go into a lower power link state when they are sent the LPM
> commands by the USB 3.0 hub or host.  Probably that will be taken care
> of in the device controller, but maybe there's some gadget-side software
> that needs to enable that?

As you say, the UDC drivers will probably choose to handle these
messages directly without passing them along to the gadget drivers.  
(If they do pass the messages, the gadget drivers won't understand
them and will reply with a STALL.)

The gadget framework does already include suspend and resume callbacks,
by which the UDC driver can tell the gadget driver about these events.

Alan Stern

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