1
0
Fork 0

drm/tegra: sor: Disable clocks on error in tegra_sor_init()

[ Upstream commit bf3a3cdcad ]

Fix the missing clk_disable_unprepare() before return from
tegra_sor_init() in the error handling case.

Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
5.4-rM2-2.2.x-imx-squashed
Qinglang Miao 2020-10-30 09:34:24 +08:00 committed by Greg Kroah-Hartman
parent 9b6ebb202b
commit be063ce100
1 changed files with 8 additions and 2 deletions

View File

@ -2899,6 +2899,7 @@ static int tegra_sor_init(struct host1x_client *client)
if (err < 0) {
dev_err(sor->dev, "failed to deassert SOR reset: %d\n",
err);
clk_disable_unprepare(sor->clk);
return err;
}
@ -2906,12 +2907,17 @@ static int tegra_sor_init(struct host1x_client *client)
}
err = clk_prepare_enable(sor->clk_safe);
if (err < 0)
if (err < 0) {
clk_disable_unprepare(sor->clk);
return err;
}
err = clk_prepare_enable(sor->clk_dp);
if (err < 0)
if (err < 0) {
clk_disable_unprepare(sor->clk_safe);
clk_disable_unprepare(sor->clk);
return err;
}
/*
* Enable and unmask the HDA codec SCRATCH0 register interrupt. This