summaryrefslogtreecommitdiff
path: root/src/amdgpu_present.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/amdgpu_present.c')
-rw-r--r--src/amdgpu_present.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/amdgpu_present.c b/src/amdgpu_present.c
index 3754569..550b702 100644
--- a/src/amdgpu_present.c
+++ b/src/amdgpu_present.c
@@ -228,14 +228,7 @@ amdgpu_present_check_unflip(ScrnInfoPtr scrn)
return FALSE;
for (i = 0, num_crtcs_on = 0; i < config->num_crtc; i++) {
- xf86CrtcPtr crtc = config->crtc[i];
- drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
-
- if (!drmmode_crtc || drmmode_crtc->rotate.bo ||
- drmmode_crtc->scanout[drmmode_crtc->scanout_id].bo)
- return FALSE;
-
- if (drmmode_crtc_can_flip(crtc))
+ if (drmmode_crtc_can_flip(config->crtc[i]))
num_crtcs_on++;
}
@@ -269,6 +262,9 @@ amdgpu_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
amdgpu_pixmap_get_tiling_info(screen->GetScreenPixmap(screen)))
return FALSE;
+ if (!drmmode_crtc_can_flip(crtc->devPrivate))
+ return FALSE;
+
return amdgpu_present_check_unflip(scrn);
}