summaryrefslogtreecommitdiff
path: root/src/amdgpu_dri2.c
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2015-07-09 17:57:29 +0900
committerMichel Dänzer <michel@daenzer.net>2015-07-09 17:57:29 +0900
commit7b3212e33cd36fb6f122774df27b56ec4e1a22b8 (patch)
tree734dcfb0ce658d5f21fb453076b94bcf301ebe9a /src/amdgpu_dri2.c
parent5587a7b43d02d6371ed4675a6260427492ebad94 (diff)
DRI2: Don't ignore rotated CRTCs in amdgpu_dri2_drawable_crtc
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. Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
Diffstat (limited to 'src/amdgpu_dri2.c')
-rw-r--r--src/amdgpu_dri2.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/amdgpu_dri2.c b/src/amdgpu_dri2.c
index bde36de..bbf286c 100644
--- a/src/amdgpu_dri2.c
+++ b/src/amdgpu_dri2.c
@@ -425,18 +425,11 @@ xf86CrtcPtr amdgpu_dri2_drawable_crtc(DrawablePtr pDraw, Bool consider_disabled)
{
ScreenPtr pScreen = pDraw->pScreen;
ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
- xf86CrtcPtr crtc;
- crtc = amdgpu_pick_best_crtc(pScrn, consider_disabled,
+ return amdgpu_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