mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
usb: gadget: composite: Write SuperSpeedPlus config descriptors
Enable writing of SuperSpeedPlus descriptors for any SuperSpeedPlus capable configuration when connected in SuperSpeedPlus. Signed-off-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Felipe Balbi <balbi@kernel.org>
This commit is contained in:
parent
f3bdbe3668
commit
eae5820b85
1 changed files with 5 additions and 1 deletions
|
@ -473,7 +473,7 @@ static int config_desc(struct usb_composite_dev *cdev, unsigned w_value)
|
||||||
u8 type = w_value >> 8;
|
u8 type = w_value >> 8;
|
||||||
enum usb_device_speed speed = USB_SPEED_UNKNOWN;
|
enum usb_device_speed speed = USB_SPEED_UNKNOWN;
|
||||||
|
|
||||||
if (gadget->speed == USB_SPEED_SUPER)
|
if (gadget->speed >= USB_SPEED_SUPER)
|
||||||
speed = gadget->speed;
|
speed = gadget->speed;
|
||||||
else if (gadget_is_dualspeed(gadget)) {
|
else if (gadget_is_dualspeed(gadget)) {
|
||||||
int hs = 0;
|
int hs = 0;
|
||||||
|
@ -504,6 +504,10 @@ static int config_desc(struct usb_composite_dev *cdev, unsigned w_value)
|
||||||
check_config:
|
check_config:
|
||||||
/* ignore configs that won't work at this speed */
|
/* ignore configs that won't work at this speed */
|
||||||
switch (speed) {
|
switch (speed) {
|
||||||
|
case USB_SPEED_SUPER_PLUS:
|
||||||
|
if (!c->superspeed_plus)
|
||||||
|
continue;
|
||||||
|
break;
|
||||||
case USB_SPEED_SUPER:
|
case USB_SPEED_SUPER:
|
||||||
if (!c->superspeed)
|
if (!c->superspeed)
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Reference in a new issue