Commit 67fd1437 authored by Rohit kumar's avatar Rohit kumar Committed by Mark Brown

ASoC: qcom: Set dai_link id to each dai_link

Frontend dai_link id is used for closing ADM sessions.
During concurrent usecase when one session is closed,
it closes other ADM session associated with other usecase
too. Dai_link->id should always point to Frontend dai id.
Set cpu_dai id as dai_link id to fix the issue.
Signed-off-by: default avatarRohit kumar <rohitkr@codeaurora.org>
Acked-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 9ee325d0
...@@ -13,6 +13,7 @@ int qcom_snd_parse_of(struct snd_soc_card *card) ...@@ -13,6 +13,7 @@ int qcom_snd_parse_of(struct snd_soc_card *card)
struct device_node *cpu = NULL; struct device_node *cpu = NULL;
struct device *dev = card->dev; struct device *dev = card->dev;
struct snd_soc_dai_link *link; struct snd_soc_dai_link *link;
struct of_phandle_args args;
int ret, num_links; int ret, num_links;
ret = snd_soc_of_parse_card_name(card, "model"); ret = snd_soc_of_parse_card_name(card, "model");
...@@ -47,12 +48,14 @@ int qcom_snd_parse_of(struct snd_soc_card *card) ...@@ -47,12 +48,14 @@ int qcom_snd_parse_of(struct snd_soc_card *card)
goto err; goto err;
} }
link->cpu_of_node = of_parse_phandle(cpu, "sound-dai", 0); ret = of_parse_phandle_with_args(cpu, "sound-dai",
if (!link->cpu_of_node) { "#sound-dai-cells", 0, &args);
if (ret) {
dev_err(card->dev, "error getting cpu phandle\n"); dev_err(card->dev, "error getting cpu phandle\n");
ret = -EINVAL;
goto err; goto err;
} }
link->cpu_of_node = args.np;
link->id = args.args[0];
ret = snd_soc_of_get_dai_name(cpu, &link->cpu_dai_name); ret = snd_soc_of_get_dai_name(cpu, &link->cpu_dai_name);
if (ret) { if (ret) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment