]> git.hungrycats.org Git - linux/commitdiff
ASoC: codec: max98926: fixup invert setup mask
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tue, 18 Aug 2026 01:46:29 +0000 (01:46 +0000)
committerMark Brown <broonie@kernel.org>
Tue, 18 Aug 2026 17:14:07 +0000 (18:14 +0100)
invert might have both WCI/BCI mask, but regmap_update_bits() masks
BCI only. It needs both mask. Fixup it.

static int max98926_dai_set_fmt(...)
{
...
switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
case SND_SOC_DAIFMT_NB_NF:
break;
case SND_SOC_DAIFMT_NB_IF:
=> invert = MAX98926_DAI_WCI_MASK;
break;   ^^^^^^^^^^^^^^^^^^^^^
case SND_SOC_DAIFMT_IB_NF:
=> invert = MAX98926_DAI_BCI_MASK;
break;   ^^^^^^^^^^^^^^^^^^^^^
case SND_SOC_DAIFMT_IB_IF:
=> invert = MAX98926_DAI_BCI_MASK | MAX98926_DAI_WCI_MASK;
break;   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
default:
...
}
...
regmap_update_bits(max98926->regmap, MAX98926_FORMAT,
MAX98926_DAI_BCI_MASK, invert);
... ^^^^^^^^^^^^^^^^^^^^^
}

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

index 5305e1f9d97fd017c9c5b2f4c18692885f305c26..51a30c182167e6b0394a23d28a2dbea71d5e7385 100644 (file)
@@ -360,7 +360,7 @@ static int max98926_dai_set_fmt(struct snd_soc_dai *codec_dai,
        regmap_write(max98926->regmap,
                        MAX98926_FORMAT, MAX98926_DAI_DLY_MASK);
        regmap_update_bits(max98926->regmap, MAX98926_FORMAT,
-                       MAX98926_DAI_BCI_MASK, invert);
+                       MAX98926_DAI_BCI_MASK | MAX98926_DAI_WCI_MASK, invert);
        return 0;
 }