At Sat, 8 May 2010 11:24:56 +0200, Daniel Mack wrote:
Commit 23caaf19b ("ALSA: usb-mixer: Add support for Audio Class v2.0") broke support for Class1 devices due to two faulty changes. This patch fixes it.
Signed-off-by: Daniel Mack daniel@caiaq.de Reported-and-Tested-by: The Source thesourcehim@gmail.com Cc: Takashi Iwai tiwai@suse.de Cc: Clemens Ladisch clemens@ladisch.de
Applied now. Thanks.
Takashi
include/linux/usb/audio.h | 2 +- sound/usb/mixer.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/usb/audio.h b/include/linux/usb/audio.h index 905a87c..57f2055 100644 --- a/include/linux/usb/audio.h +++ b/include/linux/usb/audio.h @@ -244,7 +244,7 @@ struct uac_selector_unit_descriptor { static inline __u8 uac_selector_unit_iSelector(struct uac_selector_unit_descriptor *desc) { __u8 *raw = (__u8 *) desc;
- return raw[desc->bLength - 1];
- return raw[9 + desc->bLength - 1];
}
/* 4.3.2.5 Feature Unit Descriptor */ diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 21613fe..fa0fb77 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -656,7 +656,7 @@ static int check_input_term(struct mixer_build *state, int id, struct usb_audio_ case UAC_FEATURE_UNIT: { /* the header is the same for v1 and v2 */ struct uac_feature_unit_descriptor *d = p1;
id = d->bUnitID;
} case UAC_MIXER_UNIT: {id = d->bSourceID; break; /* continue to parse */
-- 1.7.1