]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ASoC: max98388: Fix missing increment of variable slot_found
authorColin Ian King <colin.i.king@gmail.com>
Thu, 10 Oct 2024 18:20:32 +0000 (19:20 +0100)
committerMark Brown <broonie@kernel.org>
Fri, 11 Oct 2024 11:06:48 +0000 (12:06 +0100)
The variable slot_found is being initialized to zero and inside
a for-loop is being checked if it's reached MAX_NUM_CH, however,
this is currently impossible since slot_found is never changed.
In a previous loop a similar coding pattern is used and slot_found
is being incremented. It appears the increment of slot_found is
missing from the loop, so fix the code by adding in the increment.

Fixes: 6a8e1d46f062 ("ASoC: max98388: add amplifier driver")
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Link: https://patch.msgid.link/20241010182032.776280-1-colin.i.king@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/max98388.c

index b847d7c59ec012778e3d2f44526e96b5210ec494..99986090b4a63a9759763881f3004d0e509e53cd 100644 (file)
@@ -763,6 +763,7 @@ static int max98388_dai_tdm_slot(struct snd_soc_dai *dai,
                        addr = MAX98388_R2044_PCM_TX_CTRL1 + (cnt / 8);
                        bits = cnt % 8;
                        regmap_update_bits(max98388->regmap, addr, bits, bits);
+                       slot_found++;
                        if (slot_found >= MAX_NUM_CH)
                                break;
                }