usb: gadget: Allow a non-SuperSpeed gadget to support LPM
authorJohn Youn <johnyoun@synopsys.com>
Fri, 28 Apr 2017 08:55:20 +0000 (12:55 +0400)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Fri, 2 Jun 2017 08:22:32 +0000 (11:22 +0300)
commita9548c55295a4268f9187e1ec93264a0682fa745
tree5ea14d14aa8845ffb1507bd2731a4cd62aa55c3d
parent0b67a6be14be5fb050b0358022c497d0619ebc40
usb: gadget: Allow a non-SuperSpeed gadget to support LPM

This commit allows a gadget that does not support SuperSpeed to indicate
that it supports LPM. It does this by setting the 'lpm_capable' flag in
the gadget structure.

If a gadget sets this, the composite gadget framework will set the
bcdUSB to 0x0201 to indicate that this supports BOS descriptors, and
also return a USB 2.0 Extension descriptor as part of the BOS descriptor
set.

See USB 2.0 LPM ECN Section 3.

Signed-off-by: John Youn <johnyoun@synopsys.com>
Signed-off-by: Sevak Arakelyan <sevaka@synopsys.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/gadget/composite.c
include/linux/usb/gadget.h