mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
drm/rockchip: vop: Use Use pm_runtime_put_sync() in vop_crtc_disable()
The procedure of rpm_idle() is as follows.
rpm_idle
->rpm_suspend
->pm_genpd_runtime_suspend
->pm_clk_suspend
->clk_disable
->genpd_poweroff
Pm_runtime_put(dev) causes rpm_idle() to be queued up, when
pm_clk_suspend() is executed, the rockchip dmcfreq lock is
released, vop clocks may be closed while changing ddr frequency.
Use pm_runtime_put_sync() instead of pm_runtime_put(), so that
rpm_idle can be executed before the lock is released.
Change-Id: Ibf4ff70b65782427eaf0fe9f7566ebff602d3757
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
This commit is contained in:
@@ -1429,7 +1429,7 @@ static void vop_crtc_disable(struct drm_crtc *crtc)
|
||||
vop->is_iommu_enabled = false;
|
||||
}
|
||||
|
||||
pm_runtime_put(vop->dev);
|
||||
pm_runtime_put_sync(vop->dev);
|
||||
clk_disable_unprepare(vop->dclk);
|
||||
clk_disable_unprepare(vop->aclk);
|
||||
clk_disable_unprepare(vop->hclk);
|
||||
|
||||
Reference in New Issue
Block a user