Commits
Mihai Serban committed 77561559571
MLK-14778: ASoC: fsl: imx-cs42888: Improve support for odd number of channels For samples with more than 2 and odd number of channels the I2S mode does not work correctly. In I2S mode we are required to activate an even number of channels (possibly on multiple datalines) and thus configure the BCLK for even channels. In this case samples with odd (smaller) number of channels are played faster and the sound is distorted. To fix this behavior we can enable TDM mode for the special cases of samples with 3, 5 or 7 channels. But even TDM has some restrictions that prevent us from having full support for the special cases: 1. TDM is not supported by codec in master mode so 3, 5 and 7 channels usage is denied. 2. In codec slave mode TDM works only with 8 slots and slot width of 32 bits. For an often used MCLK frequency of 24MHz and the above restrictions the maximum sample rate is limited to 48KHz = 24576000/(2*8*32). The 2 denominator is required by ESAI BCLK divisors. Signed-off-by: Mihai Serban <mihai.serban@nxp.com> (cherry picked from commit c35bc6ae5c48f62bae534ce8d2d818f857778ff8)