MLK-22598: ASoC: fsl_micfil: Reset channel output data Flag

With the case below, there is issue that after recording with
8 channels, the recording of 1 channel will fail.

arecord -Dhw:2,0 -r 32000 -f S16_LE -c 8 -d 5 -t raw /tmp/test1.pcm
arecord -Dhw:2,0 -r 32000 -f S16_LE -c 1 -d 5 -t raw /tmp/test2.pcm
arecord: pcm_read:2143: read error: Input/output error

The reason is that we need to reset channel output data Flag before
we start the recording

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 45ea3acd0c)
This commit is contained in:
Shengjiu Wang
2019-11-20 19:46:46 +08:00
committed by Dong Aisheng
parent 7ac5c8b94a
commit e12b0060cd

View File

@ -865,6 +865,9 @@ static int configure_hwvad_interrupts(struct device *dev,
return ret;
}
/* w1c */
regmap_write_bits(micfil->regmap, REG_MICFIL_STAT, 0xFF, 0xFF);
return 0;
}