[PATCH xf86-video-ati] Add radeon_is_gpu_screen helper

Alex Deucher alexdeucher at gmail.com
Fri Nov 25 23:29:23 UTC 2016


On Fri, Nov 25, 2016 at 4:15 AM, Michel Dänzer <michel at daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> This will hopefully decrease the chance of accidentally breaking the
> build against xserver < 1.13 in the future.
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  src/drmmode_display.c |  5 +----
>  src/radeon.h          |  3 +++
>  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 f856f67..95e3acd 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 ad7e69c..8ca8d31 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 d0a474e..6281fa5 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)
> --
> 2.10.2
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list