ASoC: dwc-i2s: Handle errors for clk_enable
[ Upstream commit 45ea97d74313bae681328b0c36fa348036777644 ] As the potential failure of the clk_enable(), it should be better to check it, as same as clk_prepare_enable(). Fixes: c9afc1834e81 ("ASoC: dwc: Disallow building designware_pcm as a module") Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn> Link: https://lore.kernel.org/r/20220301084742.3751939-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:
parent
39bee81e30
commit
a6ee60d4a9
@ -403,9 +403,13 @@ static int dw_i2s_runtime_suspend(struct device *dev)
|
|||||||
static int dw_i2s_runtime_resume(struct device *dev)
|
static int dw_i2s_runtime_resume(struct device *dev)
|
||||||
{
|
{
|
||||||
struct dw_i2s_dev *dw_dev = dev_get_drvdata(dev);
|
struct dw_i2s_dev *dw_dev = dev_get_drvdata(dev);
|
||||||
|
int ret;
|
||||||
|
|
||||||
if (dw_dev->capability & DW_I2S_MASTER)
|
if (dw_dev->capability & DW_I2S_MASTER) {
|
||||||
clk_enable(dw_dev->clk);
|
ret = clk_enable(dw_dev->clk);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -422,10 +426,13 @@ static int dw_i2s_resume(struct snd_soc_component *component)
|
|||||||
{
|
{
|
||||||
struct dw_i2s_dev *dev = snd_soc_component_get_drvdata(component);
|
struct dw_i2s_dev *dev = snd_soc_component_get_drvdata(component);
|
||||||
struct snd_soc_dai *dai;
|
struct snd_soc_dai *dai;
|
||||||
int stream;
|
int stream, ret;
|
||||||
|
|
||||||
if (dev->capability & DW_I2S_MASTER)
|
if (dev->capability & DW_I2S_MASTER) {
|
||||||
clk_enable(dev->clk);
|
ret = clk_enable(dev->clk);
|
||||||
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
for_each_component_dais(component, dai) {
|
for_each_component_dais(component, dai) {
|
||||||
for_each_pcm_streams(stream)
|
for_each_pcm_streams(stream)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user