ASoC: renesas: rz-ssi: Use only the proper amount of dividers
BugLink: https://bugs.launchpad.net/bugs/2111953
[ 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: 03e786bd43 ("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>
Signed-off-by: Manuel Diewald <manuel.diewald@canonical.com>
Signed-off-by: Mehmet Basaran <mehmet.basaran@canonical.com>
This commit is contained in:
committed by
Mehmet Basaran
parent
16eedfee89
commit
b5e8564fc3
@@ -244,8 +244,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;
|
||||
|
||||
Reference in New Issue
Block a user