|
@@ -1414,8 +1414,8 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc,
|
|
|
tmp &= ~EVERGREEN_GRPH_SURFACE_UPDATE_H_RETRACE_EN;
|
|
|
WREG32(EVERGREEN_GRPH_FLIP_CONTROL + radeon_crtc->crtc_offset, tmp);
|
|
|
|
|
|
- /* set pageflip to happen anywhere in vblank interval */
|
|
|
- WREG32(EVERGREEN_MASTER_UPDATE_MODE + radeon_crtc->crtc_offset, 0);
|
|
|
+ /* set pageflip to happen only at start of vblank interval (front porch) */
|
|
|
+ WREG32(EVERGREEN_MASTER_UPDATE_MODE + radeon_crtc->crtc_offset, 3);
|
|
|
|
|
|
if (!atomic && fb && fb != crtc->primary->fb) {
|
|
|
radeon_fb = to_radeon_framebuffer(fb);
|
|
@@ -1614,8 +1614,8 @@ static int avivo_crtc_do_set_base(struct drm_crtc *crtc,
|
|
|
tmp &= ~AVIVO_D1GRPH_SURFACE_UPDATE_H_RETRACE_EN;
|
|
|
WREG32(AVIVO_D1GRPH_FLIP_CONTROL + radeon_crtc->crtc_offset, tmp);
|
|
|
|
|
|
- /* set pageflip to happen anywhere in vblank interval */
|
|
|
- WREG32(AVIVO_D1MODE_MASTER_UPDATE_MODE + radeon_crtc->crtc_offset, 0);
|
|
|
+ /* set pageflip to happen only at start of vblank interval (front porch) */
|
|
|
+ WREG32(AVIVO_D1MODE_MASTER_UPDATE_MODE + radeon_crtc->crtc_offset, 3);
|
|
|
|
|
|
if (!atomic && fb && fb != crtc->primary->fb) {
|
|
|
radeon_fb = to_radeon_framebuffer(fb);
|