mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 22:51:35 +00:00
ALSA: usb-audio: Set the Control Selector to SU_SELECTOR_CONTROL for UAC2
Specified in section 5.2.5.6.1 of the USB Audio Class 2.0 definition. Solves the following error for C-Media 6632A (Asus Xonar U7): [ 8219.676164] cannot get ctl value: req = 0x81, wValue = 0x0, wIndex = 0x1400, type = 3 Signed-off-by: Johan Rastén <johan@oljud.se> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
6e84a8d7ac
commit
a358a0ef86
@ -2033,10 +2033,11 @@ static int parse_audio_selector_unit(struct mixer_build *state, int unitid,
|
||||
cval->res = 1;
|
||||
cval->initialized = 1;
|
||||
|
||||
if (desc->bDescriptorSubtype == UAC2_CLOCK_SELECTOR)
|
||||
cval->control = UAC2_CX_CLOCK_SELECTOR;
|
||||
else
|
||||
if (state->mixer->protocol == UAC_VERSION_1)
|
||||
cval->control = 0;
|
||||
else /* UAC_VERSION_2 */
|
||||
cval->control = (desc->bDescriptorSubtype == UAC2_CLOCK_SELECTOR) ?
|
||||
UAC2_CX_CLOCK_SELECTOR : UAC2_SU_SELECTOR;
|
||||
|
||||
namelist = kmalloc(sizeof(char *) * desc->bNrInPins, GFP_KERNEL);
|
||||
if (!namelist) {
|
||||
|
Loading…
Reference in New Issue
Block a user