At probing a UAC2/UAC3 device like NUX MG-300 USB interface, we get error messages "RANGE setting not yet supported". It comes the place where the driver tries to determine the resolution of mixer volumes via SET_CUR_RES and GET_CUR_RES verbs. Those verbs aren't supported on UAC2 and UAC3, hence the driver warns like the above. Although the driver handles this error and works as expected, it's still ugly to show such errors unnecessarily.
This patch papers over the errors by applying the resolution detection only for UAC1 and skipping it for UAC2/UAC3.
Reported-by: Mike Oliphant oliphant@nostatic.org Signed-off-by: Takashi Iwai tiwai@suse.de --- sound/usb/mixer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 12b15ed59eaa..1a6d154a548c 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -1232,7 +1232,7 @@ static int get_min_max_with_quirks(struct usb_mixer_elem_info *cval, (cval->control << 8) | minchn, &cval->res) < 0) { cval->res = 1; - } else { + } else if (cval->head.mixer->protocol == UAC_VERSION_1) { int last_valid_res = cval->res;
while (cval->res > 1) {