]> git.sur5r.net Git - u-boot/blobdiff - drivers/usb/gadget/ep0.c
Merge branch 'master' of git://git.denx.de/u-boot-arm
[u-boot] / drivers / usb / gadget / ep0.c
index 22499d36bfe20213cbe063065a37c8bcd7260675..aa8f91600d70bf7252e8aae21873923065ccba9f 100644 (file)
@@ -338,12 +338,27 @@ static int ep0_get_descriptor (struct usb_device_instance *device,
                }
                break;
        case USB_DESCRIPTOR_TYPE_DEVICE_QUALIFIER:
+#if defined(CONFIG_USBD_HS)
                {
-                       /* If a USB device supports both a full speed and low speed operation
-                        * we must send a Device_Qualifier descriptor here
-                        */
-                       return -1;
+                       struct usb_qualifier_descriptor *qualifier_descriptor =
+                               device->qualifier_descriptor;
+
+                       if (!qualifier_descriptor)
+                               return -1;
+
+                       /* copy descriptor for this device */
+                       copy_config(urb, qualifier_descriptor,
+                                       sizeof(struct usb_qualifier_descriptor),
+                                       max);
+
                }
+               dbg_ep0(3, "copied qualifier descriptor, actual_length: 0x%x",
+                               urb->actual_length);
+#else
+               return -1;
+#endif
+               break;
+
        default:
                return -1;
        }