diff --git a/src/lib/ecore_x/ecore_x_vsync.c b/src/lib/ecore_x/ecore_x_vsync.c index 9f648f4f9b..08a679641b 100644 --- a/src/lib/ecore_x/ecore_x_vsync.c +++ b/src/lib/ecore_x/ecore_x_vsync.c @@ -592,6 +592,18 @@ _drm_init(int *flags) goto checkdone; } } + if ((!strcmp(drmver->name, "amdgpu")) && + (strstr(drmver->desc, "AMD")) && + ((drmver->version_major > 2))) + { + if (((vmaj >= 3) && (vmin >= 14)) || (vmaj >= 4)) + { + if (getenv("ECORE_VSYNC_DRM_VERSION_DEBUG")) + fprintf(stderr, "Whitelisted amdgpu OK\n"); + ok = EINA_TRUE; + goto checkdone; + } + } } if ((((drmverbroken->version_major == 1) && (drmverbroken->version_minor >= 6)) || @@ -636,6 +648,18 @@ _drm_init(int *flags) goto checkdone; } } + if ((!strcmp(drmverbroken->name, "amdgpu")) && + (strstr(drmverbroken->desc, "AMD")) && + ((drmverbroken->version_major > 2))) + { + if (((vmaj >= 3) && (vmin >= 14)) || (vmaj >= 4)) + { + if (getenv("ECORE_VSYNC_DRM_VERSION_DEBUG")) + fprintf(stderr, "Whitelisted amdgpu OK\n"); + ok = EINA_TRUE; + goto checkdone; + } + } } if ((drmver->version_major >= 0) && (drmver->version_minor >= 0) &&