next_string_id in Kernel 3.10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Recently, we encountered one issue in Kernel 3.10(On Android 4.4) where USB enumeration is falling after many connect/disconnect. 
The reason for this issue is, we started using usb_gstrings_attach for string update in configuration and cdev->next_string_id is never set to 0 in disconnect case.

I could see the commit 88af8b which has this fix in composite_dev_cleanup. But when we use Android framework, this is never called because all USB driver unbind happens through android_disable.  In Kernel 3.4.5, usb string in configuration gets updated once during boot (bind_config) but in Kernel 3.10, it happens every connect event (usb_gstrings_attach), if uses f_fs.c
So we don't want to call composite_dev_cleanup (consider android case) then cdev->next_string_id has to be clear somewhere else.

Do you think this should be handle by function driver (ACM/MTP/F_FS) or this can be fixed in composite.c itself. 
Can this be fixed in reset_config than composite_dev_cleanup?? 

Regards,
Roshan

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux