summaryrefslogtreecommitdiffstats
path: root/sound/usb/mixer.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2014-12-09 02:39:29 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2014-12-09 02:39:29 +0100
commitba00410b8131b23edfb0e09f8b6dd26c8eb621fb (patch)
treec08504e4d2fa51ac91cef544f336d0169806c49f /sound/usb/mixer.c
parentMerge tag 'trace-seq-file-cleanup' of git://git.kernel.org/pub/scm/linux/kern... (diff)
parentcopy_from_iter_nocache() (diff)
downloadlinux-ba00410b8131b23edfb0e09f8b6dd26c8eb621fb.tar.xz
linux-ba00410b8131b23edfb0e09f8b6dd26c8eb621fb.zip
Merge branch 'iov_iter' into for-next
Diffstat (limited to 'sound/usb/mixer.c')
-rw-r--r--sound/usb/mixer.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c
index 2e4a9dbc51fa..6e354d326858 100644
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -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) {