mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 11:26:02 +09:00
ANDROID: GKI: ASoC: dapm: Avoid static route b/w cpu and codec dai
Currently ASoC core creates a static route b/w playback/capture widgets of cpu and codec dai if they are part of the same dai-link. However this will cause codec path to get powered up followed by the backend dai start during device switch use-case where the front-end is not closed, leading to audio playback failure if either bit-width or sample rate is different. Test: build Bug: 151372815 Change-Id: Icd17677a73fdc4bd30e0918fcaa7e7f394245685 Signed-off-by: Sudheer Papothi <spapothi@codeaurora.org> (cherry picked from commit 85a57fb9237c4021150e3a3ba9a274a7b78b79a5) Signed-off-by: Hridya Valsaraju <hridya@google.com>
This commit is contained in:
committed by
Hridya Valsaraju
parent
645bb4d439
commit
066f5e4cf4
@@ -981,6 +981,9 @@ struct snd_soc_dai_link {
|
||||
/* This DAI link can route to other DAI links at runtime (Frontend)*/
|
||||
unsigned int dynamic:1;
|
||||
|
||||
/* This DAI link can be reconfigured at runtime (Backend) */
|
||||
unsigned int dynamic_be:1;
|
||||
|
||||
/*
|
||||
* This DAI can support no host IO (no pcm data is
|
||||
* copied to from host)
|
||||
|
||||
@@ -4227,7 +4227,8 @@ void snd_soc_dapm_connect_dai_link_widgets(struct snd_soc_card *card)
|
||||
* dynamic FE links have no fixed DAI mapping.
|
||||
* CODEC<->CODEC links have no direct connection.
|
||||
*/
|
||||
if (rtd->dai_link->dynamic || rtd->dai_link->params)
|
||||
if (rtd->dai_link->dynamic || rtd->dai_link->params ||
|
||||
rtd->dai_link->dynamic_be)
|
||||
continue;
|
||||
|
||||
dapm_connect_dai_link_widgets(card, rtd);
|
||||
|
||||
Reference in New Issue
Block a user