The DSD format supported by micfil is that oldest bit is in bit 31, so
the format should be DSD little endian format.

Fixes: 21aa330fec31 ("ASoC: fsl_micfil: Add decimation filter bypass mode 
support")
Signed-off-by: Shengjiu Wang <[email protected]>
---
 sound/soc/fsl/fsl_micfil.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/soc/fsl/fsl_micfil.c b/sound/soc/fsl/fsl_micfil.c
index aabd90a8b3ec..cac26ba0aa4b 100644
--- a/sound/soc/fsl/fsl_micfil.c
+++ b/sound/soc/fsl/fsl_micfil.c
@@ -131,7 +131,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx943 = {
        .fifos = 8,
        .fifo_depth = 32,
        .dataline =  0xf,
-       .formats = SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_DSD_U32_BE,
+       .formats = SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_DSD_U32_LE,
        .use_edma = true,
        .use_verid = true,
        .volume_sx = false,
@@ -823,7 +823,7 @@ static int fsl_micfil_hw_params(struct snd_pcm_substream 
*substream,
                break;
        }
 
-       if (format == SNDRV_PCM_FORMAT_DSD_U32_BE) {
+       if (format == SNDRV_PCM_FORMAT_DSD_U32_LE) {
                micfil->dec_bypass = true;
                /*
                 * According to equation 29 in RM:
-- 
2.34.1


Reply via email to