WSL2-Linux-Kernel/sound
Aidan MacDonald cdb208b090 ASoC: jz4740-i2s: Handle independent FIFO flush bits
commit 8b3a9ad862 upstream.

On the JZ4740, there is a single bit that flushes (empties) both
the transmit and receive FIFO. Later SoCs have independent flush
bits for each FIFO.

Independent FIFOs can be flushed before the snd_soc_dai_active()
check because it won't disturb other active streams. This ensures
that the FIFO we're about to use is always flushed before starting
up. With shared FIFOs we can't do that because if another substream
is active, flushing its FIFO would cause underrun errors.

This also fixes a bug: since we were only setting the JZ4740's
flush bit, which corresponds to the TX FIFO flush bit on other
SoCs, other SoCs were not having their RX FIFO flushed at all.

Fixes: 967beb2e87 ("ASoC: jz4740: Add jz4780 support")
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Cc: stable@vger.kernel.org
Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
Link: https://lore.kernel.org/r/20221023143328.160866-2-aidanmacdonald.0x0@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-01-12 11:58:57 +01:00
..
ac97 bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
aoa ALSA: aoa: Fix I2S device accounting 2022-11-03 23:59:18 +09:00
arm ALSA: pxa2xx: Use managed PCM buffer allocation 2021-08-04 08:08:21 +02:00
atmel
core ALSA: pcm: Set missing stop_operating flag at undoing trigger start 2022-12-31 13:14:16 +01:00
drivers ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt 2022-12-31 13:14:16 +01:00
firewire ALSA: dice: fix regression for Lexicon I-ONIX FW810S 2022-12-08 11:28:42 +01:00
hda ALSA: hda: add snd_hdac_stop_streams() helper 2022-12-31 13:14:44 +01:00
i2c
isa ALSA: wavefront: Proper check of get_user() error 2022-05-25 09:57:27 +02:00
mips
oss
parisc parisc architecture updates for kernel 5.15: 2021-09-02 13:16:00 -07:00
pci ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops 2023-01-12 11:58:51 +01:00
pcmcia ALSA: vx: Manage vx_core object with devres 2021-07-19 16:17:09 +02:00
ppc
sh
soc ASoC: jz4740-i2s: Handle independent FIFO flush bits 2023-01-12 11:58:57 +01:00
sparc
spi ALSA: spi: Add check for clk_enable() 2022-04-08 14:23:19 +02:00
synth ALSA: Use del_timer_sync() before freeing timer 2022-11-03 23:59:10 +09:00
usb ALSA: line6: fix stack overflow in line6_midi_transmit 2023-01-12 11:58:47 +01:00
virtio
x86 ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error 2022-04-20 09:34:07 +02:00
xen
Kconfig
Makefile
ac97_bus.c
last.c
sound_core.c