|
@@ -1017,6 +1017,14 @@ static int composite_bind(struct usb_gadget *gadget)
|
|
|
*/
|
|
|
usb_ep_autoconfig_reset(cdev->gadget);
|
|
|
|
|
|
+ /* standardized runtime overrides for device ID data */
|
|
|
+ if (idVendor)
|
|
|
+ cdev->desc.idVendor = cpu_to_le16(idVendor);
|
|
|
+ if (idProduct)
|
|
|
+ cdev->desc.idProduct = cpu_to_le16(idProduct);
|
|
|
+ if (bcdDevice)
|
|
|
+ cdev->desc.bcdDevice = cpu_to_le16(bcdDevice);
|
|
|
+
|
|
|
/* composite gadget needs to assign strings for whole device (like
|
|
|
* serial number), register function drivers, potentially update
|
|
|
* power state and consumption, etc
|
|
@@ -1028,14 +1036,6 @@ static int composite_bind(struct usb_gadget *gadget)
|
|
|
cdev->desc = *composite->dev;
|
|
|
cdev->desc.bMaxPacketSize0 = gadget->ep0->maxpacket;
|
|
|
|
|
|
- /* standardized runtime overrides for device ID data */
|
|
|
- if (idVendor)
|
|
|
- cdev->desc.idVendor = cpu_to_le16(idVendor);
|
|
|
- if (idProduct)
|
|
|
- cdev->desc.idProduct = cpu_to_le16(idProduct);
|
|
|
- if (bcdDevice)
|
|
|
- cdev->desc.bcdDevice = cpu_to_le16(bcdDevice);
|
|
|
-
|
|
|
/* strings can't be assigned before bind() allocates the
|
|
|
* releavnt identifiers
|
|
|
*/
|