From: Tzung-Bi Shih Date: Thu, 3 Dec 2020 15:59:14 +0000 (+0800) Subject: remoteproc/mediatek: unprepare clk if scp_before_load fails X-Git-Tag: rel_imx_5.10.35_2.0.0-somdevices.0~491^2~315 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=6ca59ab95f9fc1b853602a8b51ccbde46c3e41ec;p=linux.git remoteproc/mediatek: unprepare clk if scp_before_load fails [ Upstream commit 22c3df6f5574c8d401ea431c7ce24e7c5c5e7ef3 ] Fixes the error handling to unprepare clk if scp_before_load fails. Reviewed-by: Mathieu Poirier Fixes: fd0b6c1ff85a ("remoteproc/mediatek: Add support for mt8192 SCP") Signed-off-by: Tzung-Bi Shih Link: https://lore.kernel.org/r/20201203155914.3844426-1-tzungbi@google.com Signed-off-by: Bjorn Andersson Signed-off-by: Sasha Levin --- diff --git a/drivers/remoteproc/mtk_scp.c b/drivers/remoteproc/mtk_scp.c index f74f22d4d1ff..52fa01d67c18 100644 --- a/drivers/remoteproc/mtk_scp.c +++ b/drivers/remoteproc/mtk_scp.c @@ -350,9 +350,10 @@ static int scp_load(struct rproc *rproc, const struct firmware *fw) ret = scp->data->scp_before_load(scp); if (ret < 0) - return ret; + goto leave; ret = scp_elf_load_segments(rproc, fw); +leave: clk_disable_unprepare(scp->clk); return ret;