From: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> simple-card needs to decrease the reference count of the device nodes. This patch makes this method simple style standard. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx> --- include/sound/simple_card_core.h | 2 ++ sound/soc/generic/simple-card-core.c | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/include/sound/simple_card_core.h b/include/sound/simple_card_core.h index cd69d52..10892ae 100644 --- a/include/sound/simple_card_core.h +++ b/include/sound/simple_card_core.h @@ -101,4 +101,6 @@ int asoc_simple_card_canonicalize_dailink(struct snd_soc_dai_link *dai_link); int asoc_simple_card_canonicalize_cpu(struct snd_soc_dai_link *dai_link, int is_single_links); +int asoc_simple_card_clean_reference(struct snd_soc_card *card); + #endif /* __SIMPLE_CARD_CORE_H */ diff --git a/sound/soc/generic/simple-card-core.c b/sound/soc/generic/simple-card-core.c index bcc7826..f1d1f9d 100644 --- a/sound/soc/generic/simple-card-core.c +++ b/sound/soc/generic/simple-card-core.c @@ -392,3 +392,18 @@ int asoc_simple_card_canonicalize_cpu(struct snd_soc_dai_link *dai_link, return 0; } EXPORT_SYMBOL_GPL(asoc_simple_card_canonicalize_cpu); + +int asoc_simple_card_clean_reference(struct snd_soc_card *card) +{ + struct snd_soc_dai_link *dai_link; + int num_links; + + for (num_links = 0, dai_link = card->dai_link; + num_links < card->num_links; + num_links++, dai_link++) { + of_node_put(dai_link->cpu_of_node); + of_node_put(dai_link->codec_of_node); + } + return 0; +} +EXPORT_SYMBOL_GPL(asoc_simple_card_clean_reference); -- 1.9.1