diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2014-09-09 21:38:24 -0700 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2014-09-12 15:00:58 +0100 |
commit | 9810f5370b6e60c4b564f294feb51761f0e741f6 (patch) | |
tree | da65afb3def0c7cf2102c9d70cbf6bd4f8219fe7 /sound/soc/generic/simple-card.c | |
parent | f531913f01a07253d013a9c67a80df11154e7ae2 (diff) | |
download | op-kernel-dev-9810f5370b6e60c4b564f294feb51761f0e741f6.zip op-kernel-dev-9810f5370b6e60c4b564f294feb51761f0e741f6.tar.gz |
ASoC: simple-card: tidyup get dai_link/dai_props from priv
It can get dai_link/dai_props pointer from priv + index
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/generic/simple-card.c')
-rw-r--r-- | sound/soc/generic/simple-card.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c index 28aa5e2..a887707 100644 --- a/sound/soc/generic/simple-card.c +++ b/sound/soc/generic/simple-card.c @@ -29,6 +29,8 @@ struct simple_card_data { }; #define simple_priv_to_dev(priv) ((priv)->snd_card.dev) +#define simple_priv_to_link(priv, i) ((priv)->snd_card.dai_link + i) +#define simple_priv_to_props(priv, i) ((priv)->dai_props + i) static int asoc_simple_card_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params) @@ -173,11 +175,12 @@ asoc_simple_card_sub_parse_of(struct device_node *np, static int asoc_simple_card_dai_link_of(struct device_node *node, struct simple_card_data *priv, - struct snd_soc_dai_link *dai_link, - struct simple_dai_props *dai_props, + int idx, bool is_top_level_node) { struct device *dev = simple_priv_to_dev(priv); + struct snd_soc_dai_link *dai_link = simple_priv_to_link(priv, idx); + struct simple_dai_props *dai_props = simple_priv_to_props(priv, idx); struct device_node *np = NULL; struct device_node *bitclkmaster = NULL; struct device_node *framemaster = NULL; @@ -325,8 +328,6 @@ static int asoc_simple_card_parse_of(struct device_node *node, struct simple_card_data *priv) { struct device *dev = simple_priv_to_dev(priv); - struct snd_soc_dai_link *dai_link = priv->snd_card.dai_link; - struct simple_dai_props *dai_props = priv->dai_props; u32 val; int ret; @@ -368,9 +369,7 @@ static int asoc_simple_card_parse_of(struct device_node *node, for_each_child_of_node(node, np) { dev_dbg(dev, "\tlink %d:\n", i); ret = asoc_simple_card_dai_link_of(np, priv, - dai_link + i, - dai_props + i, - false); + i, false); if (ret < 0) { of_node_put(np); return ret; @@ -379,8 +378,7 @@ static int asoc_simple_card_parse_of(struct device_node *node, } } else { /* For single DAI link & old style of DT node */ - ret = asoc_simple_card_dai_link_of(node, priv, - dai_link, dai_props, true); + ret = asoc_simple_card_dai_link_of(node, priv, 0, true); if (ret < 0) return ret; } |