]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: soc-pcm: cleanup dpcm_dai_trigger_fe_be()
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Wed, 12 Feb 2025 02:29:03 +0000 (02:29 +0000)
committerMark Brown <broonie@kernel.org>
Sun, 16 Feb 2025 23:51:07 +0000 (23:51 +0000)
DPCM is already difficult to read, but now dpcm_dai_trigger_fe_be() even
difficult to read.

static int dpcm_dai_trigger_fe_be(.., fe_first)
{
 ^ if (fe_first) {
(A) ...
 |(x) goto end;
 v }
 ^
(B) ...
 v
end:
return ...
}

It want to switch function call order by using "fe_first" for fe->be
order part (A), or be->fe order part (B). But the code is using "goto"
in last of (A) (=x).
Just use "if..else" for (A) (B) is easy to read and understand what it
want to do.

static int dpcm_dai_trigger_fe_be(.., fe_first)
{
 ^ if (fe_first) {
(A) ...
 v }
 ^ else {
(B) ...
 v }
return ...
}

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://patch.msgid.link/87ikpfyjyo.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-pcm.c

index 96776824d9daa96fcb746417a74fc1fbf32a2d05..8a3073a506aa2ad7a580e2da9f06b0804962cc18 100644 (file)
@@ -2365,18 +2365,18 @@ static int dpcm_dai_trigger_fe_be(struct snd_pcm_substream *substream,
                        goto end;
 
                ret = dpcm_be_dai_trigger(fe, substream->stream, cmd);
-               goto end;
        }
-
        /* call trigger on the frontend after the backend. */
-       ret = dpcm_be_dai_trigger(fe, substream->stream, cmd);
-       if (ret < 0)
-               goto end;
+       else {
+               ret = dpcm_be_dai_trigger(fe, substream->stream, cmd);
+               if (ret < 0)
+                       goto end;
 
-       dev_dbg(fe->dev, "ASoC: post trigger FE %s cmd %d\n",
-               fe->dai_link->name, cmd);
+               dev_dbg(fe->dev, "ASoC: post trigger FE %s cmd %d\n",
+                       fe->dai_link->name, cmd);
 
-       ret = soc_pcm_trigger(substream, cmd);
+               ret = soc_pcm_trigger(substream, cmd);
+       }
 end:
        return snd_soc_ret(fe->dev, ret, "trigger FE cmd: %d failed\n", cmd);
 }