From 3d6aa3c10fbc9244c5be49b9dfd2e18ab0a143cb Mon Sep 17 00:00:00 2001 From: Sugar Zhang Date: Wed, 27 Mar 2024 18:23:24 +0800 Subject: [PATCH] ASoC: rockchip: multi_dais: Fix fifo count for SAI Signed-off-by: Sugar Zhang Change-Id: I60fc1848494efaa2b68ac46caa7b665237bf327d --- sound/soc/rockchip/rockchip_multi_dais_pcm.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sound/soc/rockchip/rockchip_multi_dais_pcm.c b/sound/soc/rockchip/rockchip_multi_dais_pcm.c index 0feab27b477d..b83b3a2bed95 100644 --- a/sound/soc/rockchip/rockchip_multi_dais_pcm.c +++ b/sound/soc/rockchip/rockchip_multi_dais_pcm.c @@ -915,10 +915,12 @@ static int dmaengine_mpcm_get_fifo_count(struct device *dev, } else if (strstr(dev_driver_string(component->dev), "sai")) { reg = substream->stream ? SAI_RXFIFOLR : SAI_TXFIFOLR; - val = SAI_FIFOLR_XFL3(reg) + - SAI_FIFOLR_XFL2(reg) + - SAI_FIFOLR_XFL1(reg) + - SAI_FIFOLR_XFL0(reg); + val = snd_soc_component_read(component, reg); + + val = SAI_FIFOLR_XFL3(val) + + SAI_FIFOLR_XFL2(val) + + SAI_FIFOLR_XFL1(val) + + SAI_FIFOLR_XFL0(val); } return val;