Commit 07f8f22a authored by Mansur Alisha Shaik's avatar Mansur Alisha Shaik Committed by Mauro Carvalho Chehab

media: venus: core: remove CNOC voting while device suspend

The Venus driver is voting Configuration NoC during .probe but not clear
voting in .suspend. Because of this NoC is up during shutdown also. As a
consequence the whole device could leak energy while in .suspend.

So correct this by moving voting in .resume and unvoting
in .suspend
Signed-off-by: default avatarMansur Alisha Shaik <mansur@codeaurora.org>
Signed-off-by: default avatarStanimir Varbanov <stanimir.varbanov@linaro.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 0f61e171
......@@ -244,10 +244,6 @@ static int venus_probe(struct platform_device *pdev)
if (ret)
return ret;
ret = icc_set_bw(core->cpucfg_path, 0, kbps_to_icc(1000));
if (ret)
return ret;
ret = hfi_create(core, &venus_core_ops);
if (ret)
return ret;
......@@ -353,6 +349,10 @@ static __maybe_unused int venus_runtime_suspend(struct device *dev)
if (ret)
return ret;
ret = icc_set_bw(core->cpucfg_path, 0, 0);
if (ret)
return ret;
if (pm_ops->core_power)
ret = pm_ops->core_power(dev, POWER_OFF);
......@@ -371,6 +371,10 @@ static __maybe_unused int venus_runtime_resume(struct device *dev)
return ret;
}
ret = icc_set_bw(core->cpucfg_path, 0, kbps_to_icc(1000));
if (ret)
return ret;
return hfi_core_resume(core, false);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment