Merge remote-tracking branch 'asoc/fix/rcar' into asoc-linus
authorMark Brown <broonie@kernel.org>
Thu, 26 Oct 2017 07:45:37 +0000 (09:45 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 26 Oct 2017 07:45:37 +0000 (09:45 +0200)
sound/soc/sh/rcar/adg.c
sound/soc/sh/rcar/ssi.c

index 938baff86ef280a9b6f6d93a4e4e7283a3ea9eb8..e11ce5036bcfb8347d930673f8888ba414c37418 100644 (file)
@@ -479,10 +479,10 @@ static void rsnd_adg_get_clkout(struct rsnd_priv *priv,
        }
 
        if (req_rate[0] % 48000 == 0)
-               adg->flags = AUDIO_OUT_48;
+               adg->flags |= AUDIO_OUT_48;
 
        if (of_get_property(np, "clkout-lr-asynchronous", NULL))
-               adg->flags = LRCLK_ASYNC;
+               adg->flags |= LRCLK_ASYNC;
 
        /*
         * This driver is assuming that AUDIO_CLKA/AUDIO_CLKB/AUDIO_CLKC
index fffc07e7262741781dbe1bf00e9acb05c3c5a766..03c2a1f02643b8eac6a56918a759b8fb95352f72 100644 (file)
@@ -1112,6 +1112,9 @@ int rsnd_ssi_probe(struct rsnd_priv *priv)
 
        i = 0;
        for_each_child_of_node(node, np) {
+               if (!of_device_is_available(np))
+                       goto skip;
+
                ssi = rsnd_ssi_get(priv, i);
 
                snprintf(name, RSND_SSI_NAME_SIZE, "%s.%d",
@@ -1148,7 +1151,7 @@ int rsnd_ssi_probe(struct rsnd_priv *priv)
                        of_node_put(np);
                        goto rsnd_ssi_probe_done;
                }
-
+skip:
                i++;
        }