usb: gadget: f_uac2: fix bFirstInterface in composite gadget

If there are multiple functions associated with a configuration, then
the UAC2 interfaces may not start at zero.  Set the correct first
interface number in the association descriptor so that the audio
interfaces are enumerated correctly in this case.

Reviewed-by: Krzysztof Opasiak <k.opasiak@samsung.com>
Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
This commit is contained in:
John Keeping 2018-01-12 18:43:32 +00:00 committed by Felipe Balbi
parent f035d139ff
commit 8813a59ed8
1 changed files with 2 additions and 0 deletions

View File

@ -524,6 +524,8 @@ afunc_bind(struct usb_configuration *cfg, struct usb_function *fn)
dev_err(dev, "%s:%d Error!\n", __func__, __LINE__); dev_err(dev, "%s:%d Error!\n", __func__, __LINE__);
return ret; return ret;
} }
iad_desc.bFirstInterface = ret;
std_ac_if_desc.bInterfaceNumber = ret; std_ac_if_desc.bInterfaceNumber = ret;
uac2->ac_intf = ret; uac2->ac_intf = ret;
uac2->ac_alt = 0; uac2->ac_alt = 0;