ASoC: SDM660: Avoid static route between 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 first 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. Set the dynamic bit of backend dai dailink to update the backend parameters before codec path setup. Change-Id: I4a3dd8d9a7bc668101914bd5d3e64a24f7279549
This commit is contained in:
1 parent
57430e5d3b
commit
8d21f18fc8
1 file changed
+10
@@ -293,6 +293,7 @@ static struct snd_soc_dai_link msm_ext_tasha_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tasha_codec",
|
||||
.codec_dai_name = "tasha_tx1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_0_TX,
|
||||
@@ -324,6 +325,7 @@ static struct snd_soc_dai_link msm_ext_tasha_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tasha_codec",
|
||||
.codec_dai_name = "tasha_tx3",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_1_TX,
|
||||
@@ -355,6 +357,7 @@ static struct snd_soc_dai_link msm_ext_tasha_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tasha_codec",
|
||||
.codec_dai_name = "tasha_tx1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.dpcm_playback = 1,
|
||||
@@ -405,6 +408,7 @@ static struct snd_soc_dai_link msm_ext_tasha_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tasha_codec",
|
||||
.codec_dai_name = "tasha_mad1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_5_TX,
|
||||
@@ -457,6 +461,7 @@ static struct snd_soc_dai_link msm_ext_tavil_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tavil_codec",
|
||||
.codec_dai_name = "tavil_tx1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_0_TX,
|
||||
@@ -488,6 +493,7 @@ static struct snd_soc_dai_link msm_ext_tavil_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tavil_codec",
|
||||
.codec_dai_name = "tavil_tx3",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_1_TX,
|
||||
@@ -535,6 +541,7 @@ static struct snd_soc_dai_link msm_ext_tavil_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tavil_codec",
|
||||
.codec_dai_name = "tavil_tx1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_3_TX,
|
||||
@@ -584,6 +591,7 @@ static struct snd_soc_dai_link msm_ext_tavil_be_dai[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "tavil_codec",
|
||||
.codec_dai_name = "tavil_mad1",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_5_TX,
|
||||
@@ -1827,6 +1835,7 @@ static struct snd_soc_dai_link msm_wcn_be_dai_links[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "btfmslim_slave",
|
||||
.codec_dai_name = "btfm_bt_sco_slim_tx",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_7_TX,
|
||||
@@ -1841,6 +1850,7 @@ static struct snd_soc_dai_link msm_wcn_be_dai_links[] = {
|
||||
.platform_name = "msm-pcm-routing",
|
||||
.codec_name = "btfmslim_slave",
|
||||
.codec_dai_name = "btfm_fm_slim_tx",
|
||||
.dynamic_be = 1,
|
||||
.no_pcm = 1,
|
||||
.dpcm_capture = 1,
|
||||
.id = MSM_BACKEND_DAI_SLIMBUS_8_TX,
|
||||
|
||||
Reference in new issue
Block a user