aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/gadget/udc/dummy_hcd.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/usb/gadget/udc/dummy_hcd.c b/drivers/usb/gadget/udc/dummy_hcd.c
index b1e21b3be6e1..d515ec31afe4 100644
--- a/drivers/usb/gadget/udc/dummy_hcd.c
+++ b/drivers/usb/gadget/udc/dummy_hcd.c
@@ -1036,7 +1036,12 @@ static int dummy_udc_probe(struct platform_device *pdev)
1036 memzero_explicit(&dum->gadget, sizeof(struct usb_gadget)); 1036 memzero_explicit(&dum->gadget, sizeof(struct usb_gadget));
1037 dum->gadget.name = gadget_name; 1037 dum->gadget.name = gadget_name;
1038 dum->gadget.ops = &dummy_ops; 1038 dum->gadget.ops = &dummy_ops;
1039 dum->gadget.max_speed = USB_SPEED_SUPER; 1039 if (mod_data.is_super_speed)
1040 dum->gadget.max_speed = USB_SPEED_SUPER;
1041 else if (mod_data.is_high_speed)
1042 dum->gadget.max_speed = USB_SPEED_HIGH;
1043 else
1044 dum->gadget.max_speed = USB_SPEED_FULL;
1040 1045
1041 dum->gadget.dev.parent = &pdev->dev; 1046 dum->gadget.dev.parent = &pdev->dev;
1042 init_dummy_udc_hw(dum); 1047 init_dummy_udc_hw(dum);
@@ -2560,8 +2565,6 @@ static struct hc_driver dummy_hcd = {
2560 .product_desc = "Dummy host controller", 2565 .product_desc = "Dummy host controller",
2561 .hcd_priv_size = sizeof(struct dummy_hcd), 2566 .hcd_priv_size = sizeof(struct dummy_hcd),
2562 2567
2563 .flags = HCD_USB3 | HCD_SHARED,
2564
2565 .reset = dummy_setup, 2568 .reset = dummy_setup,
2566 .start = dummy_start, 2569 .start = dummy_start,
2567 .stop = dummy_stop, 2570 .stop = dummy_stop,
@@ -2590,8 +2593,12 @@ static int dummy_hcd_probe(struct platform_device *pdev)
2590 dev_info(&pdev->dev, "%s, driver " DRIVER_VERSION "\n", driver_desc); 2593 dev_info(&pdev->dev, "%s, driver " DRIVER_VERSION "\n", driver_desc);
2591 dum = *((void **)dev_get_platdata(&pdev->dev)); 2594 dum = *((void **)dev_get_platdata(&pdev->dev));
2592 2595
2593 if (!mod_data.is_super_speed) 2596 if (mod_data.is_super_speed)
2597 dummy_hcd.flags = HCD_USB3 | HCD_SHARED;
2598 else if (mod_data.is_high_speed)
2594 dummy_hcd.flags = HCD_USB2; 2599 dummy_hcd.flags = HCD_USB2;
2600 else
2601 dummy_hcd.flags = HCD_USB11;
2595 hs_hcd = usb_create_hcd(&dummy_hcd, &pdev->dev, dev_name(&pdev->dev)); 2602 hs_hcd = usb_create_hcd(&dummy_hcd, &pdev->dev, dev_name(&pdev->dev));
2596 if (!hs_hcd) 2603 if (!hs_hcd)
2597 return -ENOMEM; 2604 return -ENOMEM;