diff --git a/asoc/kona.c b/asoc/kona.c index 0184e95c6d..5ac16783f1 100644 --- a/asoc/kona.c +++ b/asoc/kona.c @@ -5444,6 +5444,7 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) struct snd_soc_component *aux_comp; struct platform_device *pdev = NULL; int i = 0; + bool is_wcd937x_used = false; char *data = NULL; struct msm_asoc_mach_data *pdata = snd_soc_card_get_drvdata(rtd->card); @@ -5545,33 +5546,29 @@ static int msm_int_audrx_init(struct snd_soc_pcm_runtime *rtd) if (data != NULL) { if (!strncmp(data, "wcd937x", sizeof("wcd937x"))) { - bolero_set_port_map(component, - ARRAY_SIZE(sm_port_map_wcd937x), - sm_port_map_wcd937x); - break; - } else if (!strncmp( data, "wcd938x", - sizeof("wcd938x"))) { - if (pdata->lito_v2_enabled) { - /* - * Enable tx data line3 for - * saipan version v2 and - * write corresponding - * lpi register. - */ - bolero_set_port_map(component, - ARRAY_SIZE(sm_port_map_v2), - sm_port_map_v2); - } else { - bolero_set_port_map(component, - ARRAY_SIZE(sm_port_map), - sm_port_map); - } + is_wcd937x_used = true; break; } } } } + if (is_wcd937x_used) { + bolero_set_port_map(component, + ARRAY_SIZE(sm_port_map_wcd937x), + sm_port_map_wcd937x); + } else if (pdata->lito_v2_enabled) { + /* + * Enable tx data line3 for saipan version v2 and + * write corresponding lpi register. + */ + bolero_set_port_map(component, ARRAY_SIZE(sm_port_map_v2), + sm_port_map_v2); + } else { + bolero_set_port_map(component, ARRAY_SIZE(sm_port_map), + sm_port_map); + } + card = rtd->card->snd_card; if (!pdata->codec_root) { entry = msm_snd_info_create_subdir(card->module, "codecs",