This still tries to address the hang seen by Ezequiel Garcia on rk3288. As Tomasz noted, trying to count enablement can run into concurrency issues, so instead we'll just check if the vop is runtime-enabled to see if it could be the source of the irq and then just do our own clk_enable in the isr to bridge the possible gap between pm_runtime_enable and clk_enable in the core vop_enable() function. Display tested to still work on rk3328 and rk3399, but as I don't see the hang from Ezequiel I hope that this fixes it. changes in v2: - adapt approach ... don't try to count usage ourself, because of possible concurrency issues with vop enable/disable changes in v3: - fix comment in patch2 - add stable+fixes tags changes in v4: - address Marc's comments to patch2 Heiko Stuebner (1): drm/rockchip: vop: split out core clock enablement into separate functions Sandy Huang (1): drm/rockchip: vop: fix irq disabled after vop driver probed drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 69 ++++++++++++++------- 1 file changed, 48 insertions(+), 21 deletions(-) -- 2.17.0 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel