]> Pileus Git - ~andy/linux/blobdiff - drivers/usb/gadget/fsl_qe_udc.c
Merge branch 'for-linus' of git://git.open-osd.org/linux-open-osd
[~andy/linux] / drivers / usb / gadget / fsl_qe_udc.c
index 811ea76ae76e7deff3cb72a2ae17bae76d4d37e5..b95697c03d07a7a2287fdb3200367051e308c4a6 100644 (file)
@@ -2336,8 +2336,7 @@ static int fsl_qe_start(struct usb_gadget_driver *driver,
        if (!udc_controller)
                return -ENODEV;
 
-       if (!driver || (driver->speed != USB_SPEED_FULL
-                       && driver->speed != USB_SPEED_HIGH)
+       if (!driver || driver->max_speed < USB_SPEED_FULL
                        || !bind || !driver->disconnect || !driver->setup)
                return -EINVAL;
 
@@ -2351,7 +2350,7 @@ static int fsl_qe_start(struct usb_gadget_driver *driver,
        /* hook up the driver */
        udc_controller->driver = driver;
        udc_controller->gadget.dev.driver = &driver->driver;
-       udc_controller->gadget.speed = (enum usb_device_speed)(driver->speed);
+       udc_controller->gadget.speed = driver->max_speed;
        spin_unlock_irqrestore(&udc_controller->lock, flags);
 
        retval = bind(&udc_controller->gadget);