diff options
author | Stanimir Varbanov <stanimir.varbanov@linaro.org> | 2020-12-15 15:07:44 +0100 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2021-01-11 13:36:18 +0100 |
commit | 9eb09dc2f4650de8c6ce286d3153511e6f6314c0 (patch) | |
tree | 7b24aa744a01c2316c11d3b012bd98941868fc5d /drivers | |
parent | media: rc: fix timeout handling after switch to microsecond durations (diff) | |
download | linux-9eb09dc2f4650de8c6ce286d3153511e6f6314c0.tar.xz linux-9eb09dc2f4650de8c6ce286d3153511e6f6314c0.zip |
media: venus: core: Fix platform driver shutdown
With TZ system reboot cannot finish successfully. To fix that
enable core clocks by runtime pm before TZ calls and disable
clocks after that.
Tested-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/platform/qcom/venus/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/platform/qcom/venus/core.c b/drivers/media/platform/qcom/venus/core.c index bdd293faaad0..7233a7311757 100644 --- a/drivers/media/platform/qcom/venus/core.c +++ b/drivers/media/platform/qcom/venus/core.c @@ -349,8 +349,10 @@ static void venus_core_shutdown(struct platform_device *pdev) { struct venus_core *core = platform_get_drvdata(pdev); + pm_runtime_get_sync(core->dev); venus_shutdown(core); venus_firmware_deinit(core); + pm_runtime_put_sync(core->dev); } static __maybe_unused int venus_runtime_suspend(struct device *dev) |