mirror of
https://git.codelinaro.org/clo/qsdk/oss/boot/u-boot-2016.git
synced 2025-12-10 07:44:53 +01:00
ipq9574: USB: Add delay for Get descriptor
Change-Id: I1ca6035fb30f692ec57ecb9f9c90393837c69a76 Signed-off-by: Kavin A <quic_kavia@quicinc.com>
This commit is contained in:
parent
bcf5b57166
commit
4291c86117
1 changed files with 14 additions and 8 deletions
22
common/usb.c
22
common/usb.c
|
|
@ -46,6 +46,8 @@
|
|||
#define TRANSCEND_USB_VENDOR_ID 0x8564
|
||||
#define TRANSCEND_USB_PRODUCT_ID 0x1000
|
||||
|
||||
#define SP_USB_VENDOR_ID 0x058f
|
||||
#define SP_USB_PRODUCT_ID 0x6387
|
||||
static int asynch_allowed;
|
||||
char usb_started; /* flag for the started/stopped USB status */
|
||||
|
||||
|
|
@ -1091,18 +1093,22 @@ int usb_select_config(struct usb_device *dev)
|
|||
le16_to_cpus(&dev->descriptor.idProduct);
|
||||
le16_to_cpus(&dev->descriptor.bcdDevice);
|
||||
|
||||
/*The Transcend device fails for get configuration length. Adding
|
||||
delay about 10 micro secs to fix this.*/
|
||||
if (dev->descriptor.idVendor == TRANSCEND_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == TRANSCEND_USB_PRODUCT_ID)
|
||||
/*The Transcend and Silicon-power devices fails for get configuration length.
|
||||
Adding delay about 10 micro secs to fix this.*/
|
||||
if ((dev->descriptor.idVendor == TRANSCEND_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == TRANSCEND_USB_PRODUCT_ID) ||
|
||||
(dev->descriptor.idVendor == SP_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == SP_USB_PRODUCT_ID))
|
||||
udelay(10);
|
||||
/* only support for one config for now */
|
||||
err = usb_get_configuration_len(dev, 0);
|
||||
|
||||
/*The Transcend device fails for get configuration number. Adding
|
||||
delay about 10 micro secs to fix this.*/
|
||||
if (dev->descriptor.idVendor == TRANSCEND_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == TRANSCEND_USB_PRODUCT_ID)
|
||||
/*The Transcend and Silicon-power devices fails for get configuration number.
|
||||
Adding delay about 10 micro secs to fix this.*/
|
||||
if ((dev->descriptor.idVendor == TRANSCEND_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == TRANSCEND_USB_PRODUCT_ID) ||
|
||||
(dev->descriptor.idVendor == SP_USB_VENDOR_ID &&
|
||||
dev->descriptor.idProduct == SP_USB_PRODUCT_ID))
|
||||
udelay(10);
|
||||
|
||||
if (err >= 0) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue