All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/mxsfb: Call drm_crtc_vblank_on/off
@ 2020-05-27  9:47 ` Daniel Vetter
  0 siblings, 0 replies; 62+ messages in thread
From: Daniel Vetter @ 2020-05-27  9:47 UTC (permalink / raw)
  To: DRI Development
  Cc: Marek Vasut, Fabio Estevam, Daniel Vetter,
	Intel Graphics Development, Stefan Agner, NXP Linux Team,
	Pengutronix Kernel Team, Daniel Vetter, Shawn Guo, Sascha Hauer,
	linux-arm-kernel

mxsfb has vblank support, is atomic, but doesn't call
drm_crtc_vblank_on/off as it should. Not good.

With my next patch to add the drm_crtc_vblank_reset to helpers this
means not even the very first crtc enabling will vblanks work anymore,
since they'll just stay off forever.

Since mxsfb doesn't have any vblank waits of its own in the
enable/disable flow, nor an enable/disable_vblank callback we can do
the on/off as the first respectively last operation, and it should all
work.

Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Stefan Agner <stefan@agner.ch>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: linux-arm-kernel@lists.infradead.org
---
 drivers/gpu/drm/mxsfb/mxsfb_drv.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/mxsfb/mxsfb_drv.c b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
index 497cf443a9af..1891cd6deb2f 100644
--- a/drivers/gpu/drm/mxsfb/mxsfb_drv.c
+++ b/drivers/gpu/drm/mxsfb/mxsfb_drv.c
@@ -124,6 +124,7 @@ static void mxsfb_pipe_enable(struct drm_simple_display_pipe *pipe,
 	drm_panel_prepare(mxsfb->panel);
 	mxsfb_crtc_enable(mxsfb);
 	drm_panel_enable(mxsfb->panel);
+	drm_crtc_vblank_on(&pipe->crtc);
 }
 
 static void mxsfb_pipe_disable(struct drm_simple_display_pipe *pipe)
@@ -133,6 +134,7 @@ static void mxsfb_pipe_disable(struct drm_simple_display_pipe *pipe)
 	struct drm_crtc *crtc = &pipe->crtc;
 	struct drm_pending_vblank_event *event;
 
+	drm_crtc_vblank_off(&pipe->crtc);
 	drm_panel_disable(mxsfb->panel);
 	mxsfb_crtc_disable(mxsfb);
 	drm_panel_unprepare(mxsfb->panel);
-- 
2.26.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 62+ messages in thread

end of thread, other threads:[~2020-06-02  9:44 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-27  9:47 [PATCH 1/2] drm/mxsfb: Call drm_crtc_vblank_on/off Daniel Vetter
2020-05-27  9:47 ` [Intel-gfx] " Daniel Vetter
2020-05-27  9:47 ` Daniel Vetter
     [not found] ` <20200527094757.1414174-1-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2020-05-27  9:47   ` [PATCH 2/2] drm/atomic-helper: reset vblank on crtc reset Daniel Vetter
2020-05-27  9:47     ` [Intel-gfx] " Daniel Vetter
2020-05-27  9:47     ` Daniel Vetter
     [not found]     ` <20200527094757.1414174-2-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2020-05-27  9:53       ` [PATCH] " Daniel Vetter
2020-05-27  9:53         ` [Intel-gfx] " Daniel Vetter
2020-05-27  9:53         ` Daniel Vetter
2020-05-30  3:22         ` Laurent Pinchart
2020-05-30  3:22           ` [Intel-gfx] " Laurent Pinchart
2020-05-30  3:22           ` Laurent Pinchart
     [not found]           ` <20200530032258.GD5961-N3hz7ZxfLydczECFQUw77jytWr6r+dGw0E9HWUfgJXw@public.gmane.org>
2020-06-02  9:43             ` Daniel Vetter
2020-06-02  9:43               ` [Intel-gfx] " Daniel Vetter
2020-06-02  9:43               ` Daniel Vetter
     [not found]         ` <20200527095332.1439425-1-daniel.vetter-/w4YWyX8dFk@public.gmane.org>
2020-05-27 10:52           ` Thierry Reding
2020-05-27 10:52             ` [Intel-gfx] " Thierry Reding
2020-05-27 10:52             ` Thierry Reding
2020-05-27 10:57           ` Liviu Dudau
2020-05-27 10:57             ` [Intel-gfx] " Liviu Dudau
2020-05-27 10:57             ` Liviu Dudau
     [not found]             ` <20200527105702.GI159988-A/Nd4k6kWRHZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2020-05-27 11:07               ` Daniel Vetter
2020-05-27 11:07                 ` [Intel-gfx] " Daniel Vetter
2020-05-27 11:07                 ` Daniel Vetter
2020-05-27 12:08                 ` Liviu Dudau
2020-05-27 12:08                   ` [Intel-gfx] " Liviu Dudau
2020-05-27 12:08                   ` Liviu Dudau
     [not found]                   ` <20200527120809.GJ159988-A/Nd4k6kWRHZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2020-05-27 14:21                     ` Daniel Vetter
2020-05-27 14:21                       ` [Intel-gfx] " Daniel Vetter
2020-05-27 14:21                       ` Daniel Vetter
2020-06-01 17:19           ` Liviu Dudau
2020-06-01 17:19             ` [Intel-gfx] " Liviu Dudau
2020-06-01 17:19             ` Liviu Dudau
2020-05-27 15:42       ` [PATCH 2/2] " Daniel Vetter
2020-05-27 15:42         ` [Intel-gfx] " Daniel Vetter
2020-05-27 15:42         ` Daniel Vetter
2020-05-29 11:58       ` Daniel Vetter
2020-05-29 11:58         ` [Intel-gfx] " Daniel Vetter
2020-05-29 11:58         ` Daniel Vetter
2020-05-29 12:02       ` Boris Brezillon
2020-05-29 12:02         ` [Intel-gfx] " Boris Brezillon
2020-05-29 12:02         ` Boris Brezillon
2020-05-27  9:57 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/mxsfb: Call drm_crtc_vblank_on/off Patchwork
2020-05-27 10:17 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-05-27 10:54 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm/mxsfb: Call drm_crtc_vblank_on/off (rev2) Patchwork
2020-05-27 11:17 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-05-27 12:55 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2020-05-28  5:46 ` [PATCH 1/2] drm/mxsfb: Call drm_crtc_vblank_on/off Daniel Vetter
2020-05-28  5:46   ` [Intel-gfx] " Daniel Vetter
2020-05-28  5:46   ` Daniel Vetter
2020-05-28  7:56   ` Stefan Agner
2020-05-28  7:56     ` [Intel-gfx] " Stefan Agner
2020-05-28  7:56     ` Stefan Agner
2020-05-28  8:06     ` Daniel Vetter
2020-05-28  8:06       ` [Intel-gfx] " Daniel Vetter
2020-05-28  8:06       ` Daniel Vetter
2020-05-28  8:19       ` Stefan Agner
2020-05-28  8:19         ` [Intel-gfx] " Stefan Agner
2020-05-28  8:19         ` Stefan Agner
2020-05-28  8:25         ` Daniel Vetter
2020-05-28  8:25           ` [Intel-gfx] " Daniel Vetter
2020-05-28  8:25           ` Daniel Vetter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.