ASoC: rsnd: R-Car Gen1/Gen2 exception
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tue, 2 Apr 2024 02:24:15 +0000 (02:24 +0000)
committerMark Brown <broonie@kernel.org>
Tue, 2 Apr 2024 14:55:06 +0000 (15:55 +0100)
Renesas Sound driver is using rsnd_is_genX() macro to handling
difference. We can use "grep rsnd_is_gen" to find-out difference for
each SoC today.

In general, driver uses flag to handling SoC difference. But in Renesas
Sound case, the differences are very specific, if you try to make it
general, the code will become be very complicated.

Some of them can use flag to handling, but we can find-out all diffence
by using "grep rsnd_is_gen" today. It is not so good, but not so bad so
far. So we will keep current style for a while.

This patch cares Gen1/Gen2 exception by using negative handling to makes no
more update for this part when we support Gen5 or later.

- if (rsnd_is_gen3() || rsnd_is_gen4() || rsnd_is_gen5() || ...)
+ if (!rsnd_is_gen1() && !rsnd_is_gen2())

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://msgid.link/r/87wmpga4ds.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sh/rcar/core.c

index 0b1aa23c118977670aae599ee6365d97c2f9501d..6bc7027ed4dbf64e158686234c6fea6f7a895e11 100644 (file)
@@ -1512,7 +1512,7 @@ static int rsnd_dai_probe(struct rsnd_priv *priv)
                                continue;
                        for_each_endpoint_of_node(ports, dai_np) {
                                __rsnd_dai_probe(priv, dai_np, dai_np, 0, dai_i);
-                               if (rsnd_is_gen3(priv) || rsnd_is_gen4(priv)) {
+                               if (!rsnd_is_gen1(priv) && !rsnd_is_gen2(priv)) {
                                        rdai = rsnd_rdai_get(priv, dai_i);
 
                                        rsnd_parse_connect_graph(priv, &rdai->playback, dai_np);
@@ -1531,7 +1531,7 @@ static int rsnd_dai_probe(struct rsnd_priv *priv)
 
                        for_each_child_of_node(node, dai_np) {
                                __rsnd_dai_probe(priv, dai_np, np, dai_i, dai_i);
-                               if (rsnd_is_gen3(priv) || rsnd_is_gen4(priv)) {
+                               if (!rsnd_is_gen1(priv) && !rsnd_is_gen2(priv)) {
                                        rdai = rsnd_rdai_get(priv, dai_i);
 
                                        rsnd_parse_connect_simple(priv, &rdai->playback, dai_np);