ASoC: soc-core: use soc_find_component() at snd_soc_get_dai_id()
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Mon, 13 May 2019 07:07:20 +0000 (16:07 +0900)
committerMark Brown <broonie@kernel.org>
Mon, 13 May 2019 11:44:51 +0000 (12:44 +0100)
soc-core core already has soc_find_component() which find
component from device node.
Let's use existing function to find component.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-core.c

index e55170c..e83edbe 100644 (file)
@@ -3751,7 +3751,7 @@ EXPORT_SYMBOL_GPL(snd_soc_of_parse_daifmt);
 
 int snd_soc_get_dai_id(struct device_node *ep)
 {
-       struct snd_soc_component *pos;
+       struct snd_soc_component *component;
        struct device_node *node;
        int ret;
 
@@ -3765,17 +3765,10 @@ int snd_soc_get_dai_id(struct device_node *ep)
         */
        ret = -ENOTSUPP;
        mutex_lock(&client_mutex);
-       for_each_component(pos) {
-               struct device_node *component_of_node = soc_component_to_node(pos);
-
-               if (component_of_node != node)
-                       continue;
-
-               if (pos->driver->of_xlate_dai_id)
-                       ret = pos->driver->of_xlate_dai_id(pos, ep);
-
-               break;
-       }
+       component = soc_find_component(node, NULL);
+       if (component &&
+           component->driver->of_xlate_dai_id)
+               ret = component->driver->of_xlate_dai_id(component, ep);
        mutex_unlock(&client_mutex);
 
        of_node_put(node);