From 7984ac92e4e214474f9d0f13f2830431cbfde86e Mon Sep 17 00:00:00 2001 From: Philipp Zabel Date: Mon, 28 Feb 2022 14:42:03 +0100 Subject: mesalib: enable VA support Enable VA support for radeonsi, r600, and nouveau. Signed-off-by: Philipp Zabel Message-Id: <20220228134203.1956719-1-p.zabel@pengutronix.de> Signed-off-by: Michael Olbrich --- rules/mesalib.in | 6 ++++++ rules/mesalib.make | 23 +++++++++++++++++++++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/rules/mesalib.in b/rules/mesalib.in index 6737828c7..6b3410b40 100644 --- a/rules/mesalib.in +++ b/rules/mesalib.in @@ -12,6 +12,7 @@ menuconfig MESALIB select GCCLIBS select GCCLIBS_CXX select LIBDRM + select LIBVA if MESALIB_VA select LIBDRM_INTEL if MESALIB_DRI_I915 || MESALIB_DRI_I965 select WAYLAND if MESALIB_EGL_WAYLAND select WAYLAND_PROTOCOLS if MESALIB_EGL_WAYLAND @@ -172,6 +173,11 @@ config MESALIB_GBM bool prompt "GBM" +config MESALIB_VA + bool + depends on MESALIB_DRI_RADEONSI || MESALIB_DRI_R600 || MESALIB_DRI_NOUVEAU + prompt "VA" + comment "Platforms" config MESALIB_EGL_X11 diff --git a/rules/mesalib.make b/rules/mesalib.make index 3dd45667f..f5c0c99b0 100644 --- a/rules/mesalib.make +++ b/rules/mesalib.make @@ -38,7 +38,7 @@ MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_NOUVEAU_VIEUX)+= nouveau MESALIB_DRI_DRIVERS-$(PTXCONF_MESALIB_DRI_R200) += r200 MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_VIRGL) += virgl -ifndef PTXCONF_ARCH_ARM # broken: https://bugs.freedesktop.org/show_bug.cgi?id=72064 +ifndef PTXCONF_ARCH_ARM # broken: https://gitlab.freedesktop.org/mesa/mesa/-/issues/473 ifndef PTXCONF_ARCH_X86 # needs llvm MESALIB_GALLIUM_DRIVERS-$(PTXCONF_MESALIB_DRI_R300) += r300 endif @@ -127,6 +127,14 @@ MESALIB_LIBS-$(PTXCONF_MESALIB_GBM) += libgbm MESALIBS_EGL_PLATFORMS-$(PTXCONF_MESALIB_EGL_WAYLAND) += wayland MESALIBS_EGL_PLATFORMS-$(PTXCONF_MESALIB_EGL_X11) += x11 +ifdef PTXCONF_MESALIB_VA +ifndef PTXCONF_ARCH_ARM # broken: https://gitlab.freedesktop.org/mesa/mesa/-/issues/473 +MESALIB_DRI_VA_LIBS-$(PTXCONF_MESALIB_DRI_R600) += r600 +MESALIB_DRI_VA_LIBS-$(PTXCONF_MESALIB_DRI_RADEONSI) += radeonsi +endif +MESALIB_DRI_VA_LIBS-$(PTXCONF_MESALIB_DRI_NOUVEAU) += nouveau +endif + MESALIB_CONF_TOOL := meson MESALIB_CONF_OPT := \ $(CROSS_MESON_USR) \ @@ -152,7 +160,7 @@ MESALIB_CONF_OPT := \ -Dgallium-nine=false \ -Dgallium-omx=disabled \ -Dgallium-opencl=disabled \ - -Dgallium-va=disabled \ + -Dgallium-va=$(call ptx/endis, PTXCONF_MESALIB_VA)d \ -Dgallium-vdpau=disabled \ -Dgallium-xa=disabled \ -Dgallium-xvmc=disabled \ @@ -253,6 +261,17 @@ ifneq ($(strip $(MESALIB_DRI_GALLIUM_LIBS-y)),) $(call install_link, mesalib, gallium_dri.so, \ /usr/lib/dri/$(lib)_dri.so)$(ptx/nl)) endif +ifneq ($(strip $(MESALIB_DRI_VA_LIBS-y)),) + @$(call install_copy, mesalib, 0, 0, 0644, \ + $(MESALIB_PKGDIR)/usr/lib/dri/$(firstword $(MESALIB_DRI_VA_LIBS-y))_drv_video.so, \ + /usr/lib/dri/va_dri.so) + + @$(foreach lib, $(MESALIB_DRI_VA_LIBS-y), \ + test -f $(MESALIB_PKGDIR)/usr/lib/dri/$(lib)_drv_video.so || \ + ptxd_bailout "missing va driver $(lib)_drv_video.so"$(ptx/nl) \ + $(call install_link, mesalib, va_dri.so, \ + /usr/lib/dri/$(lib)_drv_video.so)$(ptx/nl)) +endif ifneq ($(strip $(MESALIB_VULKAN_LIBS-y)),) @$(foreach lib, $(MESALIB_VULKAN_LIBS-y), \ -- cgit v1.2.3