commit | 7ccafa2b3879612ab9ed88bb6664bd4085957186 | [log] [tgz] |
---|---|---|
author | Shengjiu Wang <shengjiu.wang@nxp.com> | Thu Jul 11 18:49:46 2019 +0800 |
committer | Mark Brown <broonie@kernel.org> | Tue Jul 23 12:25:05 2019 +0100 |
tree | 7e77f324e848b3ca35e02b8bb1012bb1eb3f6dd7 | |
parent | 6298b78742be6593d372ed1b5bfa5397e1393595 [diff] |
ASoC: fsl_esai: recover the channel swap after xrun There is chip errata ERR008000, the reference doc is (https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf), The issue is "While using ESAI transmit or receive and an underrun/overrun happens, channel swap may occur. The only recovery mechanism is to reset the ESAI." This issue exist in imx3/imx5/imx6(partial) series. In this commit add a tasklet to handle reset of ESAI after xrun happens to recover the channel swap. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Acked-by: Nicolin Chen <nicoleotsuka@gmail.com> Link: https://lore.kernel.org/r/326035cb99975361699d9ed748054b08bc06a341.1562842206.git.shengjiu.wang@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>