ASoC: Additional Rockchip fix for v7.0

One more ASoC fix, for a regression with the Rockchip I2S TDM support on
 a number of platforms.
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmmXMCwACgkQJNaLcl1U
 h9Bmrwf9FTFb/1yFy7gxssSLg2AL3srpu8+XTpECaDCipbSVf16G+BIfO2kv7mxL
 W/11m51nVT/JjkVziSxtb2ugvLKCjQ+YKoDGRDcNy3gHdbZj+GNeM8havbiUHtMH
 cYkuvVvShkNAVezR8xyLQVI/+ojj3QFJBIX2Od6ExGmIn2/nTpnmXF0rxTgsjNfl
 vW41Smx8xR3274bKezyrxWxjy38vyb1NQnCxuw5gCvSXR2z8Bb++KgM00ZagQ0L/
 6U0roLBxZCwS0SWbmPw3bQ1ox7+7uMDRPI5PZoYBQyuVPTxAp6aH9CD6ElEtA7aY
 jhEY39PnX0+0bhkp8x2TxqtY+zPvNg==
 =jNEo
 -----END PGP SIGNATURE-----

Merge tag 'asoc-fix-v7.0-rockchip-i2s-tdm' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Additional Rockchip fix for v7.0

One more ASoC fix, for a regression with the Rockchip I2S TDM support on
a number of platforms.
This commit is contained in:
Takashi Iwai 2026-02-19 16:50:38 +01:00
commit 89339d889d

View file

@ -22,6 +22,7 @@
#define DRV_NAME "rockchip-i2s-tdm"
#define DEFAULT_MCLK_FS 256
#define CH_GRP_MAX 4 /* The max channel 8 / 2 */
#define MULTIPLEX_CH_MAX 10
@ -665,6 +666,15 @@ static int rockchip_i2s_tdm_hw_params(struct snd_pcm_substream *substream,
mclk_rate = i2s_tdm->mclk_rx_freq;
}
/*
* When the dai/component driver doesn't need to set mclk-fs for a specific
* clock, it can skip the call to set_sysclk() for that clock.
* In that case, simply use the clock rate from the params and multiply it by
* the default mclk-fs value.
*/
if (!mclk_rate)
mclk_rate = DEFAULT_MCLK_FS * params_rate(params);
err = clk_set_rate(mclk, mclk_rate);
if (err)
return err;