On Thu, 8 Jun 2017, Yueyao Zhu wrote:

> From: Yueyao Zhu <yue...@google.com>
> 
> Currently, if a USB driver would like to enable autosuspend on the USB
> device, usb_enable_autosuspend() seems to be the only option. However,
> this acts on the device level, and other interfaces might not desire
> to autosuspend the USB device.
> 
> For example, for the usb digital audio driver to enable autosuspend on
> a device, calling usb_enable_autosuspend() from the interface driver
> might not be a good idea as the USB device might have a keyboard HID
> interface which generally doesn't handle autosupend very well.
> 
> This patch series introduces an API for interface driver to vote
> for autosuspend on the interface, and when all interfaces agree to
> it, autosuspend can then be enabled on the usb device.

The whole idea of this seems questionable.  USB interface drivers are
generally not supposed to enable or disable autosuspend -- that is a
policy decision left up to userspace.  There are a few exceptions for 
things like hubs, but this is generally true.

Why should the USB digital audio driver want to enable autosuspend?

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to