diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2011-09-26 21:15:27 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-09-27 09:21:48 +0200 |
commit | 17d900c4a1b50bc191b3ca58cbd78acc04a1c5b3 (patch) | |
tree | 7640521988e285f1afa0e3dd44aa73a5333ccb38 /sound/usb/mixer.c | |
parent | 6b69a0e520a0dc6579901098d0810bcd2e1ea60b (diff) | |
download | linux-17d900c4a1b50bc191b3ca58cbd78acc04a1c5b3.tar.gz linux-17d900c4a1b50bc191b3ca58cbd78acc04a1c5b3.tar.bz2 linux-17d900c4a1b50bc191b3ca58cbd78acc04a1c5b3.zip |
ALSA: usb-audio: increase control transfer timeout
There are certain devices that are reportedly so slow that they need
more than 100 ms to handle control transfers. Therefore, increase the
timeout in mixer(_quirks).c to 1000 ms.
The timeout parameter of snd_usb_ctl_msg() is now constant, so we can
drop it.
Reported-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/mixer.c')
-rw-r--r-- | sound/usb/mixer.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 78a5abda6793..b13b7ac5bad9 100644 --- a/sound/usb/mixer.c +++ b/sound/usb/mixer.c @@ -296,7 +296,7 @@ static int get_ctl_value_v1(struct usb_mixer_elem_info *cval, int request, int v if (snd_usb_ctl_msg(chip->dev, usb_rcvctrlpipe(chip->dev, 0), request, USB_RECIP_INTERFACE | USB_TYPE_CLASS | USB_DIR_IN, validx, snd_usb_ctrl_intf(chip) | (cval->id << 8), - buf, val_len, 100) >= val_len) { + buf, val_len) >= val_len) { *value_ret = convert_signed_value(cval, snd_usb_combine_bytes(buf, val_len)); snd_usb_autosuspend(cval->mixer->chip); return 0; @@ -333,7 +333,7 @@ static int get_ctl_value_v2(struct usb_mixer_elem_info *cval, int request, int v ret = snd_usb_ctl_msg(chip->dev, usb_rcvctrlpipe(chip->dev, 0), bRequest, USB_RECIP_INTERFACE | USB_TYPE_CLASS | USB_DIR_IN, validx, snd_usb_ctrl_intf(chip) | (cval->id << 8), - buf, size, 1000); + buf, size); snd_usb_autosuspend(chip); if (ret < 0) { @@ -445,7 +445,7 @@ int snd_usb_mixer_set_ctl_value(struct usb_mixer_elem_info *cval, usb_sndctrlpipe(chip->dev, 0), request, USB_RECIP_INTERFACE | USB_TYPE_CLASS | USB_DIR_OUT, validx, snd_usb_ctrl_intf(chip) | (cval->id << 8), - buf, val_len, 100) >= 0) { + buf, val_len) >= 0) { snd_usb_autosuspend(chip); return 0; } |