From: Michel Dänzer <michel.daen...@amd.com> Waiting for vblank interrupts works fine with rotated CRTCs. The only case we can't handle with rotation is page flipping, which is handled in can_exchange().
This fixes gnome-shell hanging on rotation, probably because amdgpu_dri2_get_msc returned MSC/UST 0 for rotated CRTCs. (Ported from amdgpu commit 7b3212e33cd36fb6f122774df27b56ec4e1a22b8) Signed-off-by: Michel Dänzer <michel.daen...@amd.com> --- src/radeon_dri2.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c index 7587a0c..09a84b5 100644 --- a/src/radeon_dri2.c +++ b/src/radeon_dri2.c @@ -559,19 +559,12 @@ xf86CrtcPtr radeon_dri2_drawable_crtc(DrawablePtr pDraw, Bool consider_disabled) { ScreenPtr pScreen = pDraw->pScreen; ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen); - xf86CrtcPtr crtc; - crtc = radeon_pick_best_crtc(pScrn, consider_disabled, + return radeon_pick_best_crtc(pScrn, consider_disabled, pDraw->x, pDraw->x + pDraw->width, pDraw->y, pDraw->y + pDraw->height); - - /* Make sure the CRTC is valid and this is the real front buffer */ - if (crtc != NULL && !crtc->rotatedData) - return crtc; - else - return NULL; } static void -- 2.5.0 _______________________________________________ xorg-driver-ati mailing list xorg-driver-ati@lists.x.org http://lists.x.org/mailman/listinfo/xorg-driver-ati