linux-stable/sound
Aidan MacDonald 883d229b67 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-07 11:15:55 +01:00
..
ac97 ALSA: ac97: Replace sprintf() with sysfs_emit() 2022-08-02 16:03:41 +02:00
aoa ALSA: aoa: Fix I2S device accounting 2022-11-04 00:00:33 +09:00
arm ALSA: arm: pxa: pxa2xx-ac97-lib: fix return value check of platform_get_irq() 2022-11-16 10:03:51 +01:00
atmel
core ALSA: pcm: Set missing stop_operating flag at undoing trigger start 2022-12-31 13:26:09 +01:00
drivers ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt 2022-12-31 13:26:09 +01:00
firewire ALSA: dice: fix regression for Lexicon I-ONIX FW810S 2022-12-08 11:30:18 +01:00
hda ALSA: hda: add snd_hdac_stop_streams() helper 2022-12-31 13:26:48 +01:00
i2c
isa ALSA: wavefront: remove redundant assignment to pointer end 2022-07-04 14:29:27 +02:00
mips
oss sound/oss/dmasound: fix 'dmasound_setup' defined but not used 2022-04-15 09:17:37 +02:00
parisc
pci ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops 2023-01-07 11:15:47 +01:00
pcmcia
ppc
sh
soc ASoC: jz4740-i2s: Handle independent FIFO flush bits 2023-01-07 11:15:55 +01:00
sparc
spi sound:spi: remove reference to AVR32 in Atmel AT73C213 DAC driver 2022-08-03 11:11:26 +02:00
synth ALSA: Use del_timer_sync() before freeing timer 2022-11-04 00:00:17 +09:00
usb ALSA: line6: fix stack overflow in line6_midi_transmit 2023-01-04 11:26:30 +01:00
virtio
x86 ALSA: x86: intel_hdmi_audio: use pm_runtime_resume_and_get() 2022-06-17 10:46:38 +02:00
xen xen/sndfront: use xenbus_setup_ring() and xenbus_teardown_ring() 2022-05-19 14:22:08 +02:00
Kconfig
Makefile
ac97_bus.c
last.c
sound_core.c