diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 32d13bc747..40c3d25866 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -150,6 +150,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO # the toolchain having sync4 primitives, which is always a given # for arm/aarch64. select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER + select BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER select BR2_PACKAGE_LIBDRM_FREEDRENO help Mesa driver for Freedreno GPUs. @@ -435,6 +436,16 @@ config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_AMDGPU Select this when running Mesa inside a virtual machine with virtio-gpu host native context support. +config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_FREEDRENO + bool "freedreno-virtio" + depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO + help + Enable VirtIO support for freedreno native contexts + used by the freedreno driver. + + Select this when running Mesa inside a virtual machine + with virtio-gpu host native context support. + config BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_SUPPORTED_DRIVER bool diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk index 34597966af..d9916ca359 100644 --- a/package/mesa3d/mesa3d.mk +++ b/package/mesa3d/mesa3d.mk @@ -157,6 +157,16 @@ else MESA3D_CONF_OPTS += -Damdgpu-virtio=false endif +ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_FREEDRENO),y) +MESA3D_FREEDRENO_KMDS = msm +ifeq ($(BR2_PACKAGE_MESA3D_HOST_NATIVE_CONTEXT_DRIVER_FREEDRENO),y) +MESA3D_FREEDRENO_KMDS += virtio +endif + +MESA3D_CONF_OPTS += \ + -Dfreedreno-kmds=$(subst $(space),$(comma),$(MESA3D_FREEDRENO_KMDS)) +endif + ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL),y) MESA3D_DEPENDENCIES += host-python-ply endif