Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: ti: davinci-i2s: Enable unexpected frame pulses detection

McBSP can generate a SYNCERR when unexpected frame pulses are
detected. The driver always disables this feature and ignore the
unexpected frame pulses.

Enable the generation of SYNCERR by the McBSP. Unexpected frame
pulses are not ignored anymore.

Signed-off-by: Bastien Curutchet <bastien.curutchet@bootlin.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Link: https://msgid.link/r/20240402071213.11671-10-bastien.curutchet@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Bastien Curutchet and committed by
Mark Brown
94d57c54 eff21f5f

+3 -3
+3 -3
sound/soc/ti/davinci-i2s.c
··· 441 441 struct davinci_mcbsp_dev *dev = snd_soc_dai_get_drvdata(dai); 442 442 struct snd_interval *i = NULL; 443 443 int mcbsp_word_length, master; 444 - unsigned int rcr, xcr, clk_div, freq, framesize; 444 + unsigned int clk_div, freq, framesize; 445 445 unsigned int srgr = 0; 446 + unsigned int rcr = 0; 447 + unsigned int xcr = 0; 446 448 u32 spcr; 447 449 snd_pcm_format_t fmt; 448 450 unsigned element_cnt = 1; ··· 541 539 } 542 540 davinci_mcbsp_write_reg(dev, DAVINCI_MCBSP_SRGR_REG, srgr); 543 541 544 - rcr = DAVINCI_MCBSP_RCR_RFIG; 545 - xcr = DAVINCI_MCBSP_XCR_XFIG; 546 542 if (dev->mode == MOD_DSP_B) { 547 543 rcr |= DAVINCI_MCBSP_RCR_RDATDLY(0); 548 544 xcr |= DAVINCI_MCBSP_XCR_XDATDLY(0);