linux/drivers/gpu/drm/rockchip
Daniel Vetter 4f9d39a78e drm/rockchip: Fix crtc_state->event signalling
It's not permissible to look at plane->state from interrupt context,
since doing that would need the irq handler to acquire the
plane->mutex lock.

The other problem is that if we pipeline updates using the new
nonblocking atomic helpers new state gets commit before the irq
handler fires, resulting in a lost event.

Fix both issues by caching the necessary values in vop_win, protected
by dev->event_lock.

Cc: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Cc: Mark yao <mark.yao@rock-chips.com>
Tested-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1465388359-8070-19-git-send-email-daniel.vetter@ffwll.ch
2016-06-10 17:11:18 +02:00
..
analogix_dp-rockchip.c drm/rockchip: get rid of rockchip_drm_crtc_mode_config 2016-05-03 14:11:23 +08:00
dw_hdmi-rockchip.c drm/rockchip: get rid of rockchip_drm_crtc_mode_config 2016-05-03 14:11:23 +08:00
dw-mipi-dsi.c drm/rockchip: get rid of rockchip_drm_crtc_mode_config 2016-05-03 14:11:23 +08:00
inno_hdmi.c drm/rockchip: get rid of rockchip_drm_crtc_mode_config 2016-05-03 14:11:23 +08:00
inno_hdmi.h drm/rockchip: hdmi: add Innosilicon HDMI support 2016-02-18 13:56:43 +08:00
Kconfig drm: rockchip: dp: add rockchip platform dp driver 2016-04-05 10:13:04 +08:00
Makefile drm: rockchip: dp: add rockchip platform dp driver 2016-04-05 10:13:04 +08:00
rockchip_drm_drv.c drm/rockchip: Drop drm_driver.load/unload callbacks 2016-06-10 16:47:48 +02:00
rockchip_drm_drv.h drm/rockchip: get rid of rockchip_drm_crtc_mode_config 2016-05-03 14:11:23 +08:00
rockchip_drm_fb.c drm/atomic-helper: Massage swap_state signature somewhat 2016-06-10 16:52:12 +02:00
rockchip_drm_fb.h drm: Pass the user drm_mode_fb_cmd2 as const to .fb_create() 2015-11-24 11:47:38 +01:00
rockchip_drm_fbdev.c drm/rockchip: Disarm vop->is_enabled 2016-06-10 17:11:18 +02:00
rockchip_drm_fbdev.h drm/rockchip: respect CONFIG_DRM_FBDEV_EMULATION 2016-01-22 08:45:31 +08:00
rockchip_drm_gem.c drm/rockchip: fix compile warnings for 64-bit 2016-06-10 16:33:40 +02:00
rockchip_drm_gem.h drm/rockchip: Only alloc a kmap for fbdev gem object 2015-03-16 10:07:12 +08:00
rockchip_drm_vop.c drm/rockchip: Fix crtc_state->event signalling 2016-06-10 17:11:18 +02:00
rockchip_drm_vop.h drm/rockchip: vop: spilt scale regsters 2015-12-28 09:01:41 +08:00
rockchip_vop_reg.c drm/rockchip: vop: add rk3036 vop support 2015-12-28 09:01:48 +08:00
rockchip_vop_reg.h drm/rockchip: vop: add rk3036 vop support 2015-12-28 09:01:48 +08:00