Message ID | 6599f538740632c5524bab86514b8ba026798537.1561483965.git.bob.beckett@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | handle vblank when disabling ctc with interrupt disabled (was [PATCH v2] drm/imx: correct order of crtc disable) | expand |
On Tue, Jun 25, 2019 at 06:59:15PM +0100, Robert Beckett wrote: > The event will be sent as part of the vblank enable during the modeset > if the crtc is not being kept disabled. > > Fixes: 5f2f911578fb ("drm/imx: atomic phase 3 step 1: Use atomic configuration") > > Signed-off-by: Robert Beckett <bob.beckett@collabora.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c > index e04d6efff1b5..c436a28d50e4 100644 > --- a/drivers/gpu/drm/imx/ipuv3-crtc.c > +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c > @@ -94,7 +94,7 @@ static void ipu_crtc_atomic_disable(struct drm_crtc *crtc, > drm_crtc_vblank_off(crtc); > > spin_lock_irq(&crtc->dev->event_lock); > - if (crtc->state->event) { > + if (crtc->state->event && !crtc->state->active) { > drm_crtc_send_vblank_event(crtc, crtc->state->event); > crtc->state->event = NULL; > } > -- > 2.18.0 >
On Tue, 2019-06-25 at 22:22 +0200, Daniel Vetter wrote: > On Tue, Jun 25, 2019 at 06:59:15PM +0100, Robert Beckett wrote: > > The event will be sent as part of the vblank enable during the modeset > > if the crtc is not being kept disabled. > > > > Fixes: 5f2f911578fb ("drm/imx: atomic phase 3 step 1: Use atomic configuration") > > > > Signed-off-by: Robert Beckett <bob.beckett@collabora.com> > > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Thank you, patches 2 and 4 applied to imx-drm/fixes. regards Philipp
diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c index e04d6efff1b5..c436a28d50e4 100644 --- a/drivers/gpu/drm/imx/ipuv3-crtc.c +++ b/drivers/gpu/drm/imx/ipuv3-crtc.c @@ -94,7 +94,7 @@ static void ipu_crtc_atomic_disable(struct drm_crtc *crtc, drm_crtc_vblank_off(crtc); spin_lock_irq(&crtc->dev->event_lock); - if (crtc->state->event) { + if (crtc->state->event && !crtc->state->active) { drm_crtc_send_vblank_event(crtc, crtc->state->event); crtc->state->event = NULL; }
The event will be sent as part of the vblank enable during the modeset if the crtc is not being kept disabled. Fixes: 5f2f911578fb ("drm/imx: atomic phase 3 step 1: Use atomic configuration") Signed-off-by: Robert Beckett <bob.beckett@collabora.com> --- drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)