Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 119ecb7f authored by Rob Clark's avatar Rob Clark
Browse files

drm/msm/mdp4: request vblank during modeset



This avoids a problem seen with weston (for example) where the display
gets stuck in "black screen" if starting weston first thing after boot.
Possibly mdp5 needs something similar.  The downstream android fbdev
driver always requests DMA_E (or DMA_P) when display is active, rather
than only enabling it on-demand as the drm driver does, which I believe
has the same end result.

Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 6814dbf9
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -397,6 +397,7 @@ static void mdp4_crtc_prepare(struct drm_crtc *crtc)
	struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc);
	DBG("%s", mdp4_crtc->name);
	/* make sure we hold a ref to mdp clks while setting up mode: */
	drm_crtc_vblank_get(crtc);
	mdp4_enable(get_kms(crtc));
	mdp4_crtc_dpms(crtc, DRM_MODE_DPMS_OFF);
}
@@ -407,6 +408,7 @@ static void mdp4_crtc_commit(struct drm_crtc *crtc)
	crtc_flush(crtc);
	/* drop the ref to mdp clk's that we got in prepare: */
	mdp4_disable(get_kms(crtc));
	drm_crtc_vblank_put(crtc);
}

static int mdp4_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,