USB: Fix goku_udc usb speed handling
authorSangSu Park <sangsu@gmail.com>
Thu, 1 Jan 2009 16:11:14 +0000 (01:11 +0900)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 7 Jan 2009 18:00:13 +0000 (10:00 -0800)
The usb gadget framework revealed weakness in the godu_udc
gadget driver register function. Instead of checking if
speed asked for was USB_LOW_SPEED upon usb_gadget_register()
to deny service, it checked only for USB_FULL_SPEED, thus
denying service to usb high speed capable gadgets.

Signed-off-by: SangSu Park <sangsu@gmail.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/gadget/goku_udc.c

index 60aa04847b189255522cf60489cb1d88a16e737b..63419c4d503c3876649e57221a9073f58cf2e8be 100644 (file)
@@ -1349,7 +1349,7 @@ int usb_gadget_register_driver(struct usb_gadget_driver *driver)
        int                     retval;
 
        if (!driver
-                       || driver->speed != USB_SPEED_FULL
+                       || driver->speed < USB_SPEED_FULL
                        || !driver->bind
                        || !driver->disconnect
                        || !driver->setup)