drm/nouveau: Call drm_vblank_pre/post_modeset() around mode setting.
Signed-off-by: Francisco Jerez <currojerez@riseup.net> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
332b242f47
commit
1c180fa5bd
2 changed files with 4 additions and 0 deletions
|
@ -672,6 +672,7 @@ static void nv_crtc_prepare(struct drm_crtc *crtc)
|
||||||
if (nv_two_heads(dev))
|
if (nv_two_heads(dev))
|
||||||
NVSetOwner(dev, nv_crtc->index);
|
NVSetOwner(dev, nv_crtc->index);
|
||||||
|
|
||||||
|
drm_vblank_pre_modeset(dev, nv_crtc->index);
|
||||||
funcs->dpms(crtc, DRM_MODE_DPMS_OFF);
|
funcs->dpms(crtc, DRM_MODE_DPMS_OFF);
|
||||||
|
|
||||||
NVBlankScreen(dev, nv_crtc->index, true);
|
NVBlankScreen(dev, nv_crtc->index, true);
|
||||||
|
@ -704,6 +705,7 @@ static void nv_crtc_commit(struct drm_crtc *crtc)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
funcs->dpms(crtc, DRM_MODE_DPMS_ON);
|
funcs->dpms(crtc, DRM_MODE_DPMS_ON);
|
||||||
|
drm_vblank_post_modeset(dev, nv_crtc->index);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void nv_crtc_destroy(struct drm_crtc *crtc)
|
static void nv_crtc_destroy(struct drm_crtc *crtc)
|
||||||
|
|
|
@ -454,6 +454,7 @@ nv50_crtc_prepare(struct drm_crtc *crtc)
|
||||||
|
|
||||||
NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index);
|
NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index);
|
||||||
|
|
||||||
|
drm_vblank_pre_modeset(dev, nv_crtc->index);
|
||||||
nv50_crtc_blank(nv_crtc, true);
|
nv50_crtc_blank(nv_crtc, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -469,6 +470,7 @@ nv50_crtc_commit(struct drm_crtc *crtc)
|
||||||
NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index);
|
NV_DEBUG_KMS(dev, "index %d\n", nv_crtc->index);
|
||||||
|
|
||||||
nv50_crtc_blank(nv_crtc, false);
|
nv50_crtc_blank(nv_crtc, false);
|
||||||
|
drm_vblank_post_modeset(dev, nv_crtc->index);
|
||||||
|
|
||||||
ret = RING_SPACE(evo, 2);
|
ret = RING_SPACE(evo, 2);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
|
|
Loading…
Reference in a new issue