[PATCH xf86-video-ati] Check Xorg version at runtime instead of build time in two places

Alex Deucher alexdeucher at gmail.com
Tue Nov 1 13:12:01 UTC 2016


On Tue, Nov 1, 2016 at 3:32 AM, Michel Dänzer <michel at daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> This means that all possible paths can be handled as intended, no matter
> which Xorg version the driver happened to be compiled against.
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>

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

> ---
>  man/radeon.man        | 2 +-
>  src/drmmode_display.c | 8 ++++----
>  src/radeon_kms.c      | 9 ++++-----
>  3 files changed, 9 insertions(+), 10 deletions(-)
>
> diff --git a/man/radeon.man b/man/radeon.man
> index 44603a5..1d09fc5 100644
> --- a/man/radeon.man
> +++ b/man/radeon.man
> @@ -271,7 +271,7 @@ Sea Islands.
>  Define the maximum level of DRI to enable. Valid values are 2 for DRI2 or 3 for DRI3.
>  The default is
>  .B 3 for DRI3
> -if the driver was compiled for Xorg >= 1.18.3 and glamor is enabled, otherwise
> +if the Xorg version is >= 1.18.3 and glamor is enabled, otherwise
>  .B 2 for DRI2. Note:
>  DRI3 may not work correctly in all cases with EXA, enable at your own risk.
>  .TP
> diff --git a/src/drmmode_display.c b/src/drmmode_display.c
> index b95e1c9..28b932e 100644
> --- a/src/drmmode_display.c
> +++ b/src/drmmode_display.c
> @@ -667,10 +667,10 @@ drmmode_can_use_hw_cursor(xf86CrtcPtr crtc)
>                 return FALSE;
>  #endif
>
> -#if defined(RADEON_PIXMAP_SHARING) && \
> -       XORG_VERSION_CURRENT <= XORG_VERSION_NUMERIC(1,18,99,901,0)
> -       /* HW cursor not supported with RandR 1.4 multihead */
> -       if (!xorg_list_is_empty(&crtc->scrn->pScreen->pixmap_dirty_list))
> +#if defined(RADEON_PIXMAP_SHARING)
> +       /* HW cursor not supported with RandR 1.4 multihead up to 1.18.99.901 */
> +       if (xorgGetVersion() <= XORG_VERSION_NUMERIC(1,18,99,901,0) &&
> +           !xorg_list_is_empty(&crtc->scrn->pScreen->pixmap_dirty_list))
>                 return FALSE;
>  #endif
>
> diff --git a/src/radeon_kms.c b/src/radeon_kms.c
> index 872150d..6927f58 100644
> --- a/src/radeon_kms.c
> +++ b/src/radeon_kms.c
> @@ -2195,11 +2195,10 @@ Bool RADEONScreenInit_KMS(SCREEN_INIT_ARGS_DECL)
>      }
>  #endif
>
> -#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,18,3,0,0)
> -    value = info->use_glamor;
> -#else
> -    value = FALSE;
> -#endif
> +    if (xorgGetVersion() >= XORG_VERSION_NUMERIC(1,18,3,0,0))
> +       value = info->use_glamor;
> +    else
> +       value = FALSE;
>      from = X_DEFAULT;
>
>      if (!info->r600_shadow_fb) {
> --
> 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