All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
To: Mark Brown <broonie@kernel.org>
Cc: Linux-ALSA <alsa-devel@alsa-project.org>
Subject: [PATCH 12/16] ASoC: soc-core: self contained soc_probe_link_dais()
Date: 23 Aug 2019 09:59:40 +0900	[thread overview]
Message-ID: <87ftls7la7.wl-kuninori.morimoto.gx@renesas.com> (raw)
In-Reply-To: <87wof47ldc.wl-kuninori.morimoto.gx@renesas.com>


From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>

Current soc_probe_link_dais() implementation is very half,
thus it is very difficult to read.

	for_each_comp_order(xxx) {
		for_each_card_rtds(xxx)
=>			soc_probe_link_dais(xxx);
	}

This patch does all for_each_xxx() under soc_probe_link_dais(),
and makes it to self contained.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
---
 sound/soc/soc-core.c | 50 +++++++++++++++++++++++++-------------------------
 1 file changed, 25 insertions(+), 25 deletions(-)

diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index ca06e0e..e6e9dad 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -1450,25 +1450,30 @@ static int soc_link_dai_pcm_new(struct snd_soc_dai **dais, int num_dais,
 	return 0;
 }
 
-static int soc_probe_link_dais(struct snd_soc_card *card,
-		struct snd_soc_pcm_runtime *rtd, int order)
+static int soc_probe_link_dais(struct snd_soc_card *card)
 {
-	struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
 	struct snd_soc_dai *codec_dai;
-	int i, ret;
+	struct snd_soc_pcm_runtime *rtd;
+	int i, order, ret;
 
-	dev_dbg(card->dev, "ASoC: probe %s dai link %d late %d\n",
-			card->name, rtd->num, order);
+	for_each_comp_order(order) {
+		for_each_card_rtds(card, rtd) {
 
-	ret = soc_probe_dai(cpu_dai, order);
-	if (ret)
-		return ret;
+			dev_dbg(card->dev,
+				"ASoC: probe %s dai link %d late %d\n",
+				card->name, rtd->num, order);
 
-	/* probe the CODEC DAI */
-	for_each_rtd_codec_dai(rtd, i, codec_dai) {
-		ret = soc_probe_dai(codec_dai, order);
-		if (ret)
-			return ret;
+			ret = soc_probe_dai(rtd->cpu_dai, order);
+			if (ret)
+				return ret;
+
+			/* probe the CODEC DAI */
+			for_each_rtd_codec_dai(rtd, i, codec_dai) {
+				ret = soc_probe_dai(codec_dai, order);
+				if (ret)
+					return ret;
+			}
+		}
 	}
 
 	return 0;
@@ -1931,7 +1936,7 @@ static int snd_soc_instantiate_card(struct snd_soc_card *card)
 	struct snd_soc_pcm_runtime *rtd;
 	struct snd_soc_dai_link *dai_link;
 	struct snd_soc_aux_dev *aux;
-	int ret, i, order;
+	int ret, i;
 
 	mutex_lock(&client_mutex);
 	for_each_card_prelinks(card, i, dai_link) {
@@ -2032,16 +2037,11 @@ static int snd_soc_instantiate_card(struct snd_soc_card *card)
 	}
 
 	/* probe all DAI links on this card */
-	for_each_comp_order(order) {
-		for_each_card_rtds(card, rtd) {
-			ret = soc_probe_link_dais(card, rtd, order);
-			if (ret < 0) {
-				dev_err(card->dev,
-					"ASoC: failed to instantiate card %d\n",
-					ret);
-				goto probe_end;
-			}
-		}
+	ret = soc_probe_link_dais(card);
+	if (ret < 0) {
+		dev_err(card->dev,
+			"ASoC: failed to instantiate card %d\n", ret);
+		goto probe_end;
 	}
 
 	for_each_card_rtds(card, rtd)
-- 
2.7.4

  parent reply	other threads:[~2019-08-23  0:59 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-23  0:57 [PATCH 00/16] ASoC: soc-core cleanup Kuninori Morimoto
2019-08-23  0:58 ` [PATCH 01/16] ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init() Kuninori Morimoto
2019-08-23 10:46   ` Applied "ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init()" to the asoc tree Mark Brown
2019-08-23  0:58 ` [PATCH 02/16] ASoC: soc-core: add soc_rtd_free() Kuninori Morimoto
2019-09-02 12:23   ` [alsa-devel] Applied "ASoC: soc-core: add soc_rtd_free()" to the asoc tree Mark Brown
2019-08-23  0:58 ` [PATCH 03/16] ASoC: soc-core: move soc_probe_component() position Kuninori Morimoto
2019-09-02 12:23   ` [alsa-devel] Applied "ASoC: soc-core: move soc_probe_component() position" to the asoc tree Mark Brown
2019-08-23  0:58 ` [PATCH 04/16] ASoC: soc-core: dapm related setup at one place Kuninori Morimoto
2019-09-02 12:23   ` [alsa-devel] Applied "ASoC: soc-core: dapm related setup at one place" to the asoc tree Mark Brown
2019-08-23  0:58 ` [PATCH 05/16] ASoC: soc-core: add snd_soc_dapm_init() Kuninori Morimoto
2019-09-02 12:23   ` [alsa-devel] Applied "ASoC: soc-core: add snd_soc_dapm_init()" to the asoc tree Mark Brown
2019-08-23  0:58 ` [PATCH 06/16] ASoC: soc-core: move soc_probe_link_components() position Kuninori Morimoto
2019-09-02 12:23   ` [alsa-devel] Applied "ASoC: soc-core: move soc_probe_link_components() position" to the asoc tree Mark Brown
2019-08-23  0:59 ` [PATCH 07/16] ASoC: soc-core: self contained soc_probe_link_components() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 08/16] ASoC: soc-core: self contained soc_remove_link_components() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 09/16] ASoC: soc-core: self contained soc_remove_link_dais() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 10/16] ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 11/16] ASoC: soc-core: add new soc_link_init() Kuninori Morimoto
2019-08-23  0:59 ` Kuninori Morimoto [this message]
2019-08-23  0:59 ` [PATCH 13/16] ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 14/16] ASoC: soc-core: self contained soc_bind_aux_dev() Kuninori Morimoto
2019-08-23  0:59 ` [PATCH 15/16] ASoC: soc-core: add soc_unbind_aux_dev() Kuninori Morimoto
2019-08-23  1:00 ` [PATCH 16/16] ASoC: soc-core: self contained soc_unbind_aux_dev() Kuninori Morimoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ftls7la7.wl-kuninori.morimoto.gx@renesas.com \
    --to=kuninori.morimoto.gx@renesas.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.