diff options
-rw-r--r-- | common/compat-drm.h | 8 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/common_drm_plane.c | 8 |
3 files changed, 12 insertions, 6 deletions
diff --git a/common/compat-drm.h b/common/compat-drm.h new file mode 100644 index 0000000..7247572 --- /dev/null +++ b/common/compat-drm.h @@ -0,0 +1,8 @@ +#ifndef COMPAT_DRM_H +#define COMPAT_DRM_H + +#ifndef DRM_CLIENT_CAP_UNIVERSAL_PLANES +#define DRM_CLIENT_CAP_UNIVERSAL_PLANES 2 +#endif + +#endif diff --git a/configure.ac b/configure.ac index a62169c..15e73cb 100644 --- a/configure.ac +++ b/configure.ac @@ -251,7 +251,7 @@ XORG_DRIVER_CHECK_EXT(RENDER, renderproto) XORG_DRIVER_CHECK_EXT(XV, videoproto) # Obtain compilter/linker options for the driver dependencies -PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.38]) +PKG_CHECK_MODULES(DRM, [libdrm >= 2.4.47]) PKG_CHECK_MODULES(DRMARMADA, [libdrm_armada >= 2.0.0]) save_LDFLAGS="$LDFLAGS" diff --git a/src/common_drm_plane.c b/src/common_drm_plane.c index db73c3a..dd44e5d 100644 --- a/src/common_drm_plane.c +++ b/src/common_drm_plane.c @@ -16,6 +16,7 @@ #include "xf86.h" +#include "compat-drm.h" #include "common_drm.h" static drmModePropertyPtr plane_hash_property(struct common_drm_info *drm, @@ -222,12 +223,9 @@ static Bool plane_parse_types(ScrnInfoPtr pScrn, static Bool plane_universal_planes(ScrnInfoPtr pScrn, Bool enable) { struct common_drm_info *drm = GET_DRM_INFO(pScrn); - struct drm_set_client_cap cap = { - .capability = DRM_CLIENT_CAP_UNIVERSAL_PLANES, - .value = enable, - }; - return drmIoctl(drm->fd, DRM_IOCTL_SET_CLIENT_CAP, &cap) == 0; + return drmSetClientCap(drm->fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, + enable) == 0; } drmModePropertyPtr common_drm_plane_get_property(ScrnInfoPtr pScrn, |