[PATCH libdrm] enable syncobj test depending on capability
Chunming Zhou
david1.zhou at amd.com
Thu May 16 10:46:42 UTC 2019
Feature is controlled by DRM_CAP_SYNCOBJ_TIMELINE drm capability.
Signed-off-by: Chunming Zhou <david1.zhou at amd.com>
---
include/drm/drm.h | 1 +
tests/amdgpu/syncobj_tests.c | 8 ++++++++
2 files changed, 9 insertions(+)
diff --git a/include/drm/drm.h b/include/drm/drm.h
index c893f3b4..532787bf 100644
--- a/include/drm/drm.h
+++ b/include/drm/drm.h
@@ -643,6 +643,7 @@ struct drm_gem_open {
#define DRM_CAP_PAGE_FLIP_TARGET 0x11
#define DRM_CAP_CRTC_IN_VBLANK_EVENT 0x12
#define DRM_CAP_SYNCOBJ 0x13
+#define DRM_CAP_SYNCOBJ_TIMELINE 0x14
/** DRM_IOCTL_GET_CAP ioctl argument type */
struct drm_get_cap {
diff --git a/tests/amdgpu/syncobj_tests.c b/tests/amdgpu/syncobj_tests.c
index a0c627d7..869ed88e 100644
--- a/tests/amdgpu/syncobj_tests.c
+++ b/tests/amdgpu/syncobj_tests.c
@@ -22,6 +22,7 @@
*/
#include "CUnit/Basic.h"
+#include "xf86drm.h"
#include "amdgpu_test.h"
#include "amdgpu_drm.h"
@@ -36,6 +37,13 @@ static void amdgpu_syncobj_timeline_test(void);
CU_BOOL suite_syncobj_timeline_tests_enable(void)
{
+ int r;
+ uint64_t cap = 0;
+
+ r = drmGetCap(drm_amdgpu[0], DRM_CAP_SYNCOBJ_TIMELINE, &cap);
+ if (r || cap == 0)
+ return CU_FALSE;
+
return CU_TRUE;
}
--
2.17.1
More information about the dri-devel
mailing list