linux/sound
Takashi Iwai 5ce0b06ae5 ALSA: usb-audio: Workaround for clock setup on TEAC devices
Maris reported that TEAC UD-501 (0644:8043) doesn't work with the
typical "clock source 41 is not valid, cannot use" errors on the
recent kernels.  The currently known workaround so far is to restore
(partially) what we've done unconditionally at the clock setup;
namely, re-setup the USB interface immediately after the clock is
changed.  This patch re-introduces the behavior conditionally for TEAC
devices.

Further notes:
- The USB interface shall be set later in
  snd_usb_endpoint_configure(), but this seems to be too late.
- Even calling  usb_set_interface() right after
  sne_usb_init_sample_rate() doesn't help; so this must be related
  with the clock validation, too.
- The device may still spew the "clock source 41 is not valid" error
  at the first clock setup.  This seems happening at the very first
  try of clock setup, but it disappears at later attempts.
  The error is likely harmless because the driver retries the clock
  setup (such an error is more or less expected on some devices).

Fixes: bf6313a0ff ("ALSA: usb-audio: Refactor endpoint management")
Reported-and-tested-by: Maris Abele <maris7abele@gmail.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20220521064627.29292-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2022-05-21 08:49:44 +02:00
..
ac97
aoa Kbuild updates for v5.15 2021-09-03 15:33:47 -07:00
arm
atmel
core ASoC: Fixes for v5.18 2022-04-19 17:26:01 +02:00
drivers ALSA: mtpav: Don't call card private_free at probe error path 2022-04-12 17:58:43 +02:00
firewire ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes 2022-04-25 08:03:49 +02:00
hda ALSA: hda: intel-dsp-config: Add RaptorLake PCI IDs 2022-04-21 21:22:51 +02:00
i2c
isa ALSA: wavefront: Proper check of get_user() error 2022-05-10 16:26:45 +02:00
mips ALSA: mips: Use platform_get_irq() to get the interrupt 2022-02-28 16:59:01 +01:00
oss sound/oss/dmasound: fix 'dmasound_setup' defined but not used 2022-04-15 09:17:37 +02:00
parisc parisc architecture updates for kernel 5.15: 2021-09-02 13:16:00 -07:00
pci ALSA: lola: Bounds check loop iterator against streams array size 2022-05-21 08:48:57 +02:00
pcmcia
ppc powerpc/machdep: Move sys_ctrler_t definition into pmac_feature.h 2022-02-07 21:02:20 +11:00
sh
soc ASoC: Fix for v5.17 2022-05-21 08:47:40 +02:00
sparc ALSA: sparc: no need to initialise statics to 0 2021-12-12 10:01:04 +01:00
spi sound updates for 5.18 2022-03-23 15:11:12 -07:00
synth ALSA: synth: missing check for possible NULL after the call to kstrdup 2021-11-09 07:18:50 +01:00
usb ALSA: usb-audio: Workaround for clock setup on TEAC devices 2022-05-21 08:49:44 +02:00
virtio virtio: wrap config->reset calls 2022-01-14 18:50:52 -05:00
x86 ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error 2022-04-12 17:58:35 +02:00
xen xen/grant-table: remove readonly parameter from functions 2022-03-15 20:34:40 -05:00
ac97_bus.c
Kconfig
last.c
Makefile
sound_core.c sound: core: Remove redundant variable and return the last statement 2022-02-28 17:57:14 +01:00