mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-15 01:01:56 -04:00
usb: gsi: Allocate strings IDs for functions on every bind
Currently gsi driver calling usb_string_id() from bind() callbacks to allocate string IDs for functions and then store that ID in the appropriate descriptors and string table. This string_id will cleared from composite driver in unbind path. During composition switch when bind happens its checking previously allocated string_id for functions and doesn't allocating again a new staring_id. This will cause incorrect string_id assignment to usb functions and USB CV interface descriptor test failing with no strings for some compositions. Hence fix this issue by allocating string_ids upon every function bind. Change-Id: Icce114a770a13658614fc990e60670ef23044ba1 Signed-off-by: Chandana Kishori Chiluveru <cchiluve@codeaurora.org>
This commit is contained in:
parent
a85239b919
commit
f34a46e4b4
1 changed files with 0 additions and 5 deletions
|
|
@ -2600,10 +2600,6 @@ static int gsi_update_function_bind_params(struct f_gsi *gsi,
|
|||
struct usb_function *f = &gsi->function;
|
||||
int status;
|
||||
|
||||
/* maybe allocate device-global string IDs */
|
||||
if (info->string_defs[0].id != 0)
|
||||
goto skip_string_id_alloc;
|
||||
|
||||
if (info->ctrl_str_idx >= 0 && info->ctrl_desc) {
|
||||
/* ctrl interface label */
|
||||
status = usb_string_id(cdev);
|
||||
|
|
@ -2640,7 +2636,6 @@ static int gsi_update_function_bind_params(struct f_gsi *gsi,
|
|||
info->cdc_eth_desc->iMACAddress = status;
|
||||
}
|
||||
|
||||
skip_string_id_alloc:
|
||||
if (info->ctrl_desc)
|
||||
info->ctrl_desc->bInterfaceNumber = gsi->ctrl_id;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue