ASoC: qcom: common: Parse properties with "qcom," prefix
authorStephan Gerhold <stephan@gerhold.net>
Thu, 23 Jul 2020 18:39:02 +0000 (20:39 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 24 Jul 2020 14:01:18 +0000 (15:01 +0100)
The apq8016_sbc device tree binding uses a "qcom," vendor prefix
for all device tree properties, while qcom_snd_parse_of() uses the
same properties without a prefix.

In the future it would be nice to make this consistent, however,
for backwards compatibility we need to parse both names to allow
apq8016_sbc to use the common qcom_snd_parse_of() function.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20200723183904.321040-6-stephan@gerhold.net
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/common.c

index 54f5bc6..84dba0d 100644 (file)
@@ -18,6 +18,9 @@ int qcom_snd_parse_of(struct snd_soc_card *card)
        int ret, num_links;
 
        ret = snd_soc_of_parse_card_name(card, "model");
+       if (ret == 0 && !card->name)
+               /* Deprecated, only for compatibility with old device trees */
+               ret = snd_soc_of_parse_card_name(card, "qcom,model");
        if (ret) {
                dev_err(dev, "Error parsing card name: %d\n", ret);
                return ret;
@@ -25,8 +28,13 @@ int qcom_snd_parse_of(struct snd_soc_card *card)
 
        /* DAPM routes */
        if (of_property_read_bool(dev->of_node, "audio-routing")) {
-               ret = snd_soc_of_parse_audio_routing(card,
-                               "audio-routing");
+               ret = snd_soc_of_parse_audio_routing(card, "audio-routing");
+               if (ret)
+                       return ret;
+       }
+       /* Deprecated, only for compatibility with old device trees */
+       if (of_property_read_bool(dev->of_node, "qcom,audio-routing")) {
+               ret = snd_soc_of_parse_audio_routing(card, "qcom,audio-routing");
                if (ret)
                        return ret;
        }