diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/mixer.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index c6457c5..488e531 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -1425,11 +1425,6 @@ static int parse_audio_mixer_unit(struct mixer_build *state, int unitid, void *r snd_printk(KERN_ERR "invalid MIXER UNIT descriptor %d\n", unitid); return -EINVAL; } - /* no bmControls field (e.g. Maya44) -> ignore */ - if (desc->bLength <= 10 + input_pins) { - snd_printdd(KERN_INFO "MU %d has no bmControls field\n", unitid); - return 0; - } num_ins = 0; ich = 0; @@ -1437,6 +1432,9 @@ static int parse_audio_mixer_unit(struct mixer_build *state, int unitid, void *r err = parse_audio_unit(state, desc->baSourceID[pin]); if (err < 0) return err; + /* no bmControls field (e.g. Maya44) -> ignore */ + if (desc->bLength <= 10 + input_pins) + continue; err = check_input_term(state, desc->baSourceID[pin], &iterm); if (err < 0) return err; |