]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: renesas: rcar: update auto select format
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tue, 9 Jun 2026 00:23:28 +0000 (00:23 +0000)
committerMark Brown <broonie@kernel.org>
Fri, 12 Jun 2026 17:57:57 +0000 (18:57 +0100)
Current auto select format start with the highest priority format and
gradually add lower priority formats one by one, and search matched
format. Like A+X -> A+B+X -> A+B+C+X+Y... (a)

But in this method, we can't handle format if HW has some kind of
patterns, like A+X or B+Y etc (b).

Current drivers are using (a) style, this patch switch to use (b) style.
This is needed before update auto select format method.

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

index 82fbdd550714cd185cc4217df92b3b4ddfcd7d8e..b7954746e9533cdc91a0cb0958b364e2740889b2 100644 (file)
@@ -1071,8 +1071,15 @@ static const u64 rsnd_soc_dai_formats[] = {
         *
         * Supported, but not well tested
         */
+       SND_SOC_POSSIBLE_DAIFMT_I2S     |
+       SND_SOC_POSSIBLE_DAIFMT_RIGHT_J |
+       SND_SOC_POSSIBLE_DAIFMT_LEFT_J  |
        SND_SOC_POSSIBLE_DAIFMT_DSP_A   |
-       SND_SOC_POSSIBLE_DAIFMT_DSP_B,
+       SND_SOC_POSSIBLE_DAIFMT_DSP_B   |
+       SND_SOC_POSSIBLE_DAIFMT_NB_NF   |
+       SND_SOC_POSSIBLE_DAIFMT_NB_IF   |
+       SND_SOC_POSSIBLE_DAIFMT_IB_NF   |
+       SND_SOC_POSSIBLE_DAIFMT_IB_IF,
 };
 
 static void rsnd_parse_tdm_split_mode(struct rsnd_priv *priv,