|
@@ -3615,14 +3615,17 @@ void snd_soc_of_parse_audio_prefix(struct snd_soc_card *card,
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(snd_soc_of_parse_audio_prefix);
|
|
|
|
|
|
-int snd_soc_of_parse_audio_routing(struct snd_soc_card *card,
|
|
|
+int snd_soc_of_parse_audio_routing_from_node(struct snd_soc_card *card,
|
|
|
+ struct device_node *np,
|
|
|
const char *propname)
|
|
|
{
|
|
|
- struct device_node *np = card->dev->of_node;
|
|
|
int num_routes;
|
|
|
struct snd_soc_dapm_route *routes;
|
|
|
int i, ret;
|
|
|
|
|
|
+ if (!np)
|
|
|
+ np = card->dev->of_node;
|
|
|
+
|
|
|
num_routes = of_property_count_strings(np, propname);
|
|
|
if (num_routes < 0 || num_routes & 1) {
|
|
|
dev_err(card->dev,
|
|
@@ -3669,7 +3672,7 @@ int snd_soc_of_parse_audio_routing(struct snd_soc_card *card,
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
|
-EXPORT_SYMBOL_GPL(snd_soc_of_parse_audio_routing);
|
|
|
+EXPORT_SYMBOL_GPL(snd_soc_of_parse_audio_routing_from_node);
|
|
|
|
|
|
unsigned int snd_soc_of_parse_daifmt(struct device_node *np,
|
|
|
const char *prefix,
|