From 4cfa4615f79f64062e5e771cd45dd7048f48b4f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Fri, 27 Nov 2015 16:53:30 +0900 Subject: Use drmmode_crtc_scanout_* helpers for RandR 1.4 scanout pixmaps This should allow using multiple CRTCs via RandR 1.4 even with xserver < 1.17. It also simplifies the code a little, and paves the way for following changes. Reviewed-by: Alex Deucher --- src/radeon_kms.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/radeon_kms.c') diff --git a/src/radeon_kms.c b/src/radeon_kms.c index 1fe64a73..d48c9b61 100644 --- a/src/radeon_kms.c +++ b/src/radeon_kms.c @@ -696,15 +696,17 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL) (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS); pScreen->BlockHandler = RADEONBlockHandler_KMS; - for (c = 0; c < xf86_config->num_crtc; c++) { - if (info->tear_free) - radeon_scanout_flip(pScreen, info, xf86_config->crtc[c]); - else if (info->shadow_primary + if (!pScreen->isGPU) { + for (c = 0; c < xf86_config->num_crtc; c++) { + if (info->tear_free) + radeon_scanout_flip(pScreen, info, xf86_config->crtc[c]); + else if (info->shadow_primary #if XF86_CRTC_VERSION >= 4 - || xf86_config->crtc[c]->driverIsPerformingTransform + || xf86_config->crtc[c]->driverIsPerformingTransform #endif - ) - radeon_scanout_update(xf86_config->crtc[c]); + ) + radeon_scanout_update(xf86_config->crtc[c]); + } } radeon_cs_flush_indirect(pScrn); -- cgit v1.2.3