WSL2-Linux-Kernel/sound/usb
Takashi Iwai e79d0f97cc ALSA: usb-audio: Relax hw constraints for implicit fb sync
[ Upstream commit d463ac1acb ]

The fix commit the commit e4ea77f8e5 ("ALSA: usb-audio: Always apply
the hw constraints for implicit fb sync") tried to address the bug
where an incorrect PCM parameter is chosen when two (implicit fb)
streams are set up at the same time.  This change had, however, some
side effect: once when the sync endpoint is chosen and set up, this
restriction is applied at the next hw params unless it's freed via hw
free explicitly.

This patch is a workaround for the problem by relaxing the hw
constraints a bit for the implicit fb sync.  We still keep applying
the hw constraints for implicit fb sync, but only when the matching
sync EP is being used by other streams.

Fixes: e4ea77f8e5 ("ALSA: usb-audio: Always apply the hw constraints for implicit fb sync")
Reported-by: Ruud van Asseldonk <ruud@veniogames.com>
Link: https://lore.kernel.org/r/4e509aea-e563-e592-e652-ba44af6733fe@veniogames.com
Link: https://lore.kernel.org/r/20230102170759.29610-3-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-01-18 11:48:54 +01:00
..
6fire ALSA: 6fire: fix control and bulk message timeouts 2021-11-18 19:15:54 +01:00
bcd2000 ALSA: bcd2000: Fix a UAF bug on the error path of probing 2022-08-17 14:22:46 +02:00
caiaq module: remove never implemented MODULE_SUPPORTED_DEVICE 2021-03-17 13:16:18 -07:00
hiface module: remove never implemented MODULE_SUPPORTED_DEVICE 2021-03-17 13:16:18 -07:00
line6 ALSA: line6: fix stack overflow in line6_midi_transmit 2023-01-12 11:58:47 +01:00
misc ALSA: ua101: fix division by zero at probe 2021-11-18 19:15:54 +01:00
usx2y ALSA: usx2y: fix spelling mistakes 2021-07-05 19:30:33 +02:00
Kconfig
Makefile ALSA: usb-audio: Factor out the implicit feedback quirk code 2020-11-23 15:17:00 +01:00
card.c ALSA: usb-audio: Yet more regression for for the delayed card registration 2022-11-16 09:58:25 +01:00
card.h ALSA: usb-audio: Improved lowlatency playback support 2021-12-08 09:04:36 +01:00
clock.c ALSA: usb-audio: Optimize TEAC clock quirk 2022-06-06 08:43:42 +02:00
clock.h ALSA: usb-audio: Constify audioformat pointer references 2020-11-23 15:15:36 +01:00
endpoint.c ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue 2022-12-02 17:41:02 +01:00
endpoint.h Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare" 2022-09-28 11:11:40 +02:00
format.c ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID 2022-01-27 11:04:08 +01:00
format.h
helper.c ALSA: usb-audio: Add snd_usb_get_host_interface() helper 2020-11-23 15:13:47 +01:00
helper.h ALSA: usb-audio: Add snd_usb_get_host_interface() helper 2020-11-23 15:13:47 +01:00
implicit.c ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600 2022-11-03 23:59:10 +09:00
implicit.h ALSA: usb-audio: Factor out the implicit feedback quirk code 2020-11-23 15:17:00 +01:00
media.c ALSA: usb-audio: fix spelling mistakes 2021-07-05 19:33:54 +02:00
media.h
midi.c ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open() 2022-11-26 09:24:43 +01:00
midi.h ALSA: usb-audio: generate midi streaming substream names from jack names 2021-03-01 09:21:54 +01:00
mixer.c ALSA: usb-audio: initialize variables that could ignore errors 2022-02-08 18:34:07 +01:00
mixer.h ALSA: usb-audio: Unify mixer resume and reset_resume procedure 2021-09-13 15:00:31 +02:00
mixer_maps.c ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II 2022-08-25 11:39:58 +02:00
mixer_quirks.c ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB 2022-03-28 09:58:44 +02:00
mixer_quirks.h
mixer_s1810c.c ALSA: usb-audio: fix spelling mistakes 2021-07-05 19:33:54 +02:00
mixer_s1810c.h
mixer_scarlett.c ALSA: usb-audio: fix spelling mistakes 2021-07-05 19:33:54 +02:00
mixer_scarlett.h
mixer_scarlett_gen2.c ALSA: usb-audio: Fix a missing error check in scarlett gen2 mixer 2021-09-30 13:48:51 +02:00
mixer_scarlett_gen2.h ALSA: usb-audio: scarlett2: Improve driver startup messages 2021-05-21 16:22:52 +02:00
mixer_us16x08.c ALSA: Convert strlcpy to strscpy when return value is unused 2021-01-08 09:30:05 +01:00
mixer_us16x08.h
pcm.c ALSA: usb-audio: Relax hw constraints for implicit fb sync 2023-01-18 11:48:54 +01:00
pcm.h ALSA: usb-audio: Make snd_usb_pcm_delay() static 2021-06-02 09:01:17 +02:00
power.c
power.h
proc.c ALSA: usb-audio: Show sync endpoint information in proc outputs 2020-11-23 15:16:45 +01:00
proc.h
quirks-table.h ALSA: usb-audio: add the quirk for KT0206 device 2022-12-31 13:14:45 +01:00
quirks.c ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue 2022-12-02 17:41:02 +01:00
quirks.h ALSA: usb-audio: Register card at the last interface 2022-10-26 12:35:39 +02:00
stream.c ALSA: usb-audio: Inform the delayed registration more properly 2022-09-15 11:30:05 +02:00
stream.h
usbaudio.h ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue 2022-12-02 17:41:02 +01:00
validate.c