summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/cs4349.c
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2018-02-14 13:20:56 +0100
committerMark Brown <broonie@kernel.org>2018-02-14 14:15:55 +0100
commitd460b3f861e18b9c826abe178b2db57c6dc6b3e4 (patch)
treea9d1bdae8e380bbe39e1e83408b65583ea7dc22c /sound/soc/codecs/cs4349.c
parentASoC: tlv320aic31xx: replace codec to component (diff)
downloadlinux-d460b3f861e18b9c826abe178b2db57c6dc6b3e4.tar.xz
linux-d460b3f861e18b9c826abe178b2db57c6dc6b3e4.zip
ASoC: tlv320aic31xx: Fix master mode clock I2S bus clocks
In the reset state of the codec we do not have complete playback or capture routes. The audio playback/capture will not work due to missing clock signals on the I2S bus if PLL, MDAC/NDAC/DAC MADC/NADC/ADC is powered down. To make sure that even if all output/input is disconnected the codec is generating clocks, we need to have valid DAPM route in every case to power up the must needed parts of the codec. I have verified that switching DAC (during playback) or ADC (during capture) will stop the I2S clocks, so the only solution is to connect the 'Off' routes as well to output/input. The routes will be only added if the codec is clock master. In case the role changes runtime, the applied routes are removed. Tested on am43x-epos-evm with aic3111 codec in master mode. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Reviewed-by: Jyri Sarha <jsarha@ti.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/cs4349.c')
0 files changed, 0 insertions, 0 deletions