diff options
author | Mark Hills <mark@pogo.org.uk> | 2012-04-14 12:19:23 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-04-15 09:39:55 -0400 |
commit | 284a8dd6f0fb16029198b5b34437499d504b567c (patch) | |
tree | 3521c94082d37a00fb6bc2cd2bfc15ece80d16f6 /sound | |
parent | 507230c9997ef47147818508108b97b3e189826f (diff) |
ALSA: snd-usb-audio: Skip un-parseable mixer units instead of erroring
Some interfaces reference endpoints which do not exists. To
accomodate these, do not fail completely, but skip over them.
This allows the Electrix Ebox-44 with earlier firmware to be
detected and used for audio.
Signed-off-by: Mark Hills <mark@pogo.org.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/mixer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index ab23869c01bb..c374c7242ab2 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c | |||
@@ -1388,7 +1388,7 @@ static int parse_audio_mixer_unit(struct mixer_build *state, int unitid, void *r | |||
1388 | for (pin = 0; pin < input_pins; pin++) { | 1388 | for (pin = 0; pin < input_pins; pin++) { |
1389 | err = parse_audio_unit(state, desc->baSourceID[pin]); | 1389 | err = parse_audio_unit(state, desc->baSourceID[pin]); |
1390 | if (err < 0) | 1390 | if (err < 0) |
1391 | return err; | 1391 | continue; |
1392 | err = check_input_term(state, desc->baSourceID[pin], &iterm); | 1392 | err = check_input_term(state, desc->baSourceID[pin], &iterm); |
1393 | if (err < 0) | 1393 | if (err < 0) |
1394 | return err; | 1394 | return err; |