|
@@ -715,8 +715,9 @@ static int check_input_term(struct mixer_build *state, int id, struct usb_audio_
|
|
|
case UAC2_CLOCK_SELECTOR: {
|
|
|
struct uac_selector_unit_descriptor *d = p1;
|
|
|
/* call recursively to retrieve the channel info */
|
|
|
- if (check_input_term(state, d->baSourceID[0], term) < 0)
|
|
|
- return -ENODEV;
|
|
|
+ err = check_input_term(state, d->baSourceID[0], term);
|
|
|
+ if (err < 0)
|
|
|
+ return err;
|
|
|
term->type = d->bDescriptorSubtype << 16; /* virtual type */
|
|
|
term->id = id;
|
|
|
term->name = uac_selector_unit_iSelector(d);
|
|
@@ -1357,8 +1358,9 @@ static int parse_audio_feature_unit(struct mixer_build *state, int unitid, void
|
|
|
return err;
|
|
|
|
|
|
/* determine the input source type and name */
|
|
|
- if (check_input_term(state, hdr->bSourceID, &iterm) < 0)
|
|
|
- return -EINVAL;
|
|
|
+ err = check_input_term(state, hdr->bSourceID, &iterm);
|
|
|
+ if (err < 0)
|
|
|
+ return err;
|
|
|
|
|
|
master_bits = snd_usb_combine_bytes(bmaControls, csize);
|
|
|
/* master configuration quirks */
|