]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: renesas: rz-ssi: Use only the proper amount of dividers
authorClaudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Tue, 10 Dec 2024 17:09:34 +0000 (19:09 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Mar 2025 11:50:01 +0000 (12:50 +0100)
[ Upstream commit 55c209cd4318c701e6e88e0b2512a0f12dd02a7d ]

There is no need to populate the ckdv[] with invalid dividers as that
part will not be indexed anyway. The ssi->audio_mck/bclk_rate should
always be >= 0. While at it, change the ckdv type as u8, as the divider
128 was previously using the s8 sign bit.

Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Fixes: 03e786bd43410fa9 ("ASoC: sh: Add RZ/G2L SSIF-2 driver")
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://patch.msgid.link/20241210170953.2936724-6-claudiu.beznea.uj@bp.renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/sh/rz-ssi.c

index 2e33a1fa0a6f466cccc793c522da36db3db1c053..9ef7d0a12d985c03548faad209daa3f8512d897b 100644 (file)
@@ -243,8 +243,7 @@ static void rz_ssi_stream_quit(struct rz_ssi_priv *ssi,
 static int rz_ssi_clk_setup(struct rz_ssi_priv *ssi, unsigned int rate,
                            unsigned int channels)
 {
-       static s8 ckdv[16] = { 1,  2,  4,  8, 16, 32, 64, 128,
-                              6, 12, 24, 48, 96, -1, -1, -1 };
+       static u8 ckdv[] = { 1,  2,  4,  8, 16, 32, 64, 128, 6, 12, 24, 48, 96 };
        unsigned int channel_bits = 32; /* System Word Length */
        unsigned long bclk_rate = rate * channels * channel_bits;
        unsigned int div;