summaryrefslogtreecommitdiff
path: root/driver/xf86-video-ati/src/radeon_commonfuncs.c
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2012-06-07 20:55:35 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2012-06-07 20:55:35 +0000
commit8c76ea5c7237ec06667e55640e75748417b2ff22 (patch)
treeb884bc24fb703f4cc75635783ffb227eec3d887f /driver/xf86-video-ati/src/radeon_commonfuncs.c
parent3651d096b7e018eae54972ed76b9a0e6912c3d0f (diff)
Update to xf86-video-ati 6.14.4. Tested by jasper@, krw@, mpi@, shadchin@
Diffstat (limited to 'driver/xf86-video-ati/src/radeon_commonfuncs.c')
-rw-r--r--driver/xf86-video-ati/src/radeon_commonfuncs.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/driver/xf86-video-ati/src/radeon_commonfuncs.c b/driver/xf86-video-ati/src/radeon_commonfuncs.c
index 728194904..e0b026f1b 100644
--- a/driver/xf86-video-ati/src/radeon_commonfuncs.c
+++ b/driver/xf86-video-ati/src/radeon_commonfuncs.c
@@ -839,9 +839,6 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix,
if (!crtc)
return;
- if (stop < start)
- return;
-
if (!crtc->enabled)
return;
@@ -861,16 +858,16 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix,
return;
}
- start = max(start, 0);
- stop = min(stop, crtc->mode.VDisplay);
+ start = max(start, crtc->y);
+ stop = min(stop, crtc->y + crtc->mode.VDisplay);
- if (start > crtc->mode.VDisplay)
+ if (start >= stop)
return;
- if (IS_AVIVO_VARIANT) {
- /* on r5xx+ vline starts at viewport_y */
- start += crtc->y;
- stop += crtc->y;
+ if (!IS_AVIVO_VARIANT) {
+ /* on pre-r5xx vline starts at CRTC scanout */
+ start -= crtc->y;
+ stop -= crtc->y;
}
#if defined(ACCEL_CP) && defined(XF86DRM_MODE)