drm/rockchip: try to fix vblank hang resulting from iommu irq change

A patchset in state Mainline for linux-kernel

From: Heiko Stuebner <heiko@...> Date: Tue, 12 Jun 2018 15:18:40 +0200

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

Patches in this set

Statistics

  • 2 individual patches
  • 48 lines added
  • 21 lines removed
 

Recent Patches

About Us

Sed lacus. Donec lectus. Nullam pretium nibh ut turpis. Nam bibendum. In nulla tortor, elementum vel, tempor at, varius non, purus. Mauris vitae nisl nec metus placerat consectetuer.

Read More...