[PATCH] drm/imx: fix crtc vblank state regression
Philipp Zabel
p.zabel at pengutronix.de
Tue Aug 30 07:46:21 UTC 2016
Am Montag, den 29.08.2016, 17:51 +0200 schrieb Lucas Stach:
> The atomic conversion lost the notification to let the DRM core
> know about the current state of the CRTC vblank interrupts. This
> regressed the ability of the core to reject page flip attempts
> on currently disabled CRTCs. Add back the notifications.
>
> Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> ---
> drivers/gpu/drm/imx/ipuv3-crtc.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
> index 08e188bc10fc..462056e4b9e4 100644
> --- a/drivers/gpu/drm/imx/ipuv3-crtc.c
> +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
> @@ -76,6 +76,8 @@ static void ipu_crtc_disable(struct drm_crtc *crtc)
> crtc->state->event = NULL;
> }
> spin_unlock_irq(&crtc->dev->event_lock);
> +
> + drm_crtc_vblank_off(crtc);
> }
>
> static void imx_drm_crtc_reset(struct drm_crtc *crtc)
> @@ -175,6 +177,8 @@ static int ipu_crtc_atomic_check(struct drm_crtc *crtc,
> static void ipu_crtc_atomic_begin(struct drm_crtc *crtc,
> struct drm_crtc_state *old_crtc_state)
> {
> + drm_crtc_vblank_on(crtc);
> +
> spin_lock_irq(&crtc->dev->event_lock);
> if (crtc->state->event) {
> WARN_ON(drm_crtc_vblank_get(crtc));
Applied, thanks.
regards
Philipp
More information about the dri-devel
mailing list