diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-11-25 18:12:40 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-11-25 18:12:40 +0900 |
commit | f130b10e63f7526360b41aa0918b4940f63f662a (patch) | |
tree | 95f9019cb768b196711b1b80fec2105aed0182d0 | |
parent | 487aa62a2a23b86e4ea4714fdfd465c9e513141f (diff) |
Add radeon_is_gpu_screen helper
This will hopefully decrease the chance of accidentally breaking the
build against xserver < 1.13 in the future.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | src/drmmode_display.c | 5 | ||||
-rw-r--r-- | src/radeon.h | 3 | ||||
-rw-r--r-- | src/radeon_kms.c | 14 |
3 files changed, 7 insertions, 15 deletions
diff --git a/src/drmmode_display.c b/src/drmmode_display.c index f856f67b..95e3acdc 100644 --- a/src/drmmode_display.c +++ b/src/drmmode_display.c @@ -779,10 +779,7 @@ drmmode_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode, fb_id = drmmode_crtc->rotate.fb_id; x = y = 0; - } else if ( -#ifdef RADEON_PIXMAP_SHARING - !pScreen->isGPU && -#endif + } else if (!radeon_is_gpu_screen(pScreen) && (info->tear_free || #if XF86_CRTC_VERSION >= 4 crtc->driverIsPerformingTransform || diff --git a/src/radeon.h b/src/radeon.h index ad7e69cc..8ca8d318 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -182,6 +182,9 @@ typedef enum { #if XF86_CRTC_VERSION >= 5 #define RADEON_PIXMAP_SHARING 1 +#define radeon_is_gpu_screen(screen) (screen)->isGPU +#else +#define radeon_is_gpu_screen(screen) 0 #endif #define RADEON_VSYNC_TIMEOUT 20000 /* Maximum wait for VSYNC (in usecs) */ diff --git a/src/radeon_kms.c b/src/radeon_kms.c index d0a474e0..6281fa50 100644 --- a/src/radeon_kms.c +++ b/src/radeon_kms.c @@ -317,10 +317,7 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) if (dixPrivateKeyRegistered(rrPrivKey)) { rrScrPrivPtr rrScrPriv = rrGetScrPriv(pScreen); - if ( -#ifdef RADEON_PIXMAP_SHARING - !pScreen->isGPU && -#endif + if (!radeon_is_gpu_screen(pScreen) && !rrScrPriv->primaryOutput) { xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); @@ -360,10 +357,7 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) radeon_glamor_create_screen_resources(pScreen); info->callback_event_type = -1; - if ( -#ifdef RADEON_PIXMAP_SHARING - !pScreen->isGPU && -#endif + if (!radeon_is_gpu_screen(pScreen) && (damage_ext = CheckExtension("DAMAGE"))) { info->callback_event_type = damage_ext->eventBase + XDamageNotify; @@ -1099,9 +1093,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL) (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS); pScreen->BlockHandler = RADEONBlockHandler_KMS; -#ifdef RADEON_PIXMAP_SHARING - if (!pScreen->isGPU) -#endif + if (!radeon_is_gpu_screen(pScreen)) { for (c = 0; c < xf86_config->num_crtc; c++) { if (info->tear_free) |