]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: meson: axg-fifo: fix fifo threshold setup
authorJerome Brunet <jbrunet@baylibre.com>
Wed, 18 Dec 2019 17:24:17 +0000 (18:24 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 18 Dec 2019 20:00:24 +0000 (20:00 +0000)
commit8c8f39d57f762e007f04d305abd64edad1483742
tree42cfa457b0447147fecaed5e1c2cddc15dc33f2e
parent03785ff7567d5ee1c975dd5fcd267c07c5626a7c
ASoC: meson: axg-fifo: fix fifo threshold setup

On TODDR sm1, the fifo threshold register field is slightly different
compared to the other SoCs. This leads to the fifo A being flushed to
memory every 8kB. If the period is smaller than that, several periods
are pushed to memory and notified at once. This is not ideal.

Fix the register field update. With this, the fifos are flushed every
128B. We could still do better, like adapt the threshold depending on
the period size, but at least it consistent across the different
SoC/fifos

Fixes: 02690d14478e ("ASoC: meson: axg-toddr: add sm1 support")
Reported-by: Alden DSouza <aldend@google.com>
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Link: https://lore.kernel.org/r/20191218172420.1199117-2-jbrunet@baylibre.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/meson/axg-fifo.c
sound/soc/meson/axg-fifo.h
sound/soc/meson/axg-frddr.c
sound/soc/meson/axg-toddr.c