ASoC: fsi: Add check for clk_enable

[ Upstream commit 405afed8a728f23cfaa02f75bbc8bdd6b7322123 ]

As the potential failure of the clk_enable(),
it should be better to check it and return error
if fails.

Fixes: ab6f6d8521 ("ASoC: fsi: add master clock control functions")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Link: https://lore.kernel.org/r/20220302062844.46869-1-jiasheng@iscas.ac.cn
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Jiasheng Jiang
2022-03-02 14:28:44 +08:00
committed by Greg Kroah-Hartman
parent db1c00a025
commit 20da8404e4

View File

@@ -816,14 +816,27 @@ static int fsi_clk_enable(struct device *dev,
return ret; return ret;
} }
clk_enable(clock->xck); ret = clk_enable(clock->xck);
clk_enable(clock->ick); if (ret)
clk_enable(clock->div); goto err;
ret = clk_enable(clock->ick);
if (ret)
goto disable_xck;
ret = clk_enable(clock->div);
if (ret)
goto disable_ick;
clock->count++; clock->count++;
} }
return ret; return ret;
disable_ick:
clk_disable(clock->ick);
disable_xck:
clk_disable(clock->xck);
err:
return ret;
} }
static int fsi_clk_disable(struct device *dev, static int fsi_clk_disable(struct device *dev,