mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 04:34:08 +08:00
ASoC: fsl_esai: Add freq check in set_dai_sysclk()
The freq parameter indicates the physical frequency of an actual input clock or a desired frequency of an output clock for HCKT/R. It should never be passed 0. This might cause Division-by-zero. So this patch adds a check to fix it. Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
728815e3fe
commit
8a2278b7fb
@ -226,6 +226,12 @@ static int fsl_esai_set_dai_sysclk(struct snd_soc_dai *dai, int clk_id,
|
||||
unsigned long clk_rate;
|
||||
int ret;
|
||||
|
||||
if (freq == 0) {
|
||||
dev_err(dai->dev, "%sput freq of HCK%c should not be 0Hz\n",
|
||||
in ? "in" : "out", tx ? 'T' : 'R');
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/* Bypass divider settings if the requirement doesn't change */
|
||||
if (freq == esai_priv->hck_rate[tx] && dir == esai_priv->hck_dir[tx])
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user