From: Mike Lockwood Date: Mon, 14 Feb 2011 18:32:05 +0000 (-0500) Subject: USB: gadget: android: Fix problem switching vendor IDs X-Git-Tag: firefly_0821_release~9833^2~5^2~18 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=70ee83c5d185b6ac1026b8e6e5e31616ebe39320;p=firefly-linux-kernel-4.4.55.git USB: gadget: android: Fix problem switching vendor IDs We need to update the vendor ID in the composite driver as well Signed-off-by: Mike Lockwood --- diff --git a/drivers/usb/gadget/android.c b/drivers/usb/gadget/android.c index 8e6cafc851cb..7017e23a80ad 100644 --- a/drivers/usb/gadget/android.c +++ b/drivers/usb/gadget/android.c @@ -344,6 +344,7 @@ static int android_bind(struct usb_composite_dev *cdev) dev->cdev = cdev; device_desc.idVendor = __constant_cpu_to_le16(get_vendor_id(dev)); device_desc.idProduct = __constant_cpu_to_le16(get_product_id(dev)); + cdev->desc.idVendor = device_desc.idVendor; cdev->desc.idProduct = device_desc.idProduct; return 0; @@ -436,8 +437,10 @@ void android_enable_function(struct usb_function *f, int enable) device_desc.idVendor = __constant_cpu_to_le16(get_vendor_id(dev)); device_desc.idProduct = __constant_cpu_to_le16(get_product_id(dev)); - if (dev->cdev) + if (dev->cdev) { + dev->cdev->desc.idVendor = device_desc.idVendor; dev->cdev->desc.idProduct = device_desc.idProduct; + } usb_composite_force_reset(dev->cdev); } }