From 380656c4de55951b787aa6b2c73b3c36cd0fb2e8 Mon Sep 17 00:00:00 2001 From: Frieder Schrempf Date: Thu, 13 Feb 2020 12:37:46 +0100 Subject: mesa: Allow to use Etnaviv with i.MX8 Currently the settings for i.MX8 are fixed to only allow to use OSMesa for offscreen rendering. Actually etnaviv is usable on i.MX8MM an it should therefore be possible to let Gallium be enabled instead of unconditionally disabling it. Therefore we introduce the USE_OSMESA_ONLY variable, that can be set to "no" for i.MX8 if etnaviv should be used just like for i.MX6. Signed-off-by: Frieder Schrempf --- recipes-graphics/mesa/mesa_%.bbappend | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend index e8a9b9a3..36702a00 100644 --- a/recipes-graphics/mesa/mesa_%.bbappend +++ b/recipes-graphics/mesa/mesa_%.bbappend @@ -18,19 +18,19 @@ python () { PACKAGECONFIG_append_use-mainline-bsp = " gallium" PACKAGECONFIG_append_use-mainline-bsp_armv7a = " etnaviv freedreno kmsro vc4" PACKAGECONFIG_append_use-mainline-bsp_armv7ve = " etnaviv freedreno kmsro vc4" +PACKAGECONFIG_append_use-mainline-bsp_mx8 = " etnaviv kmsro vc4" -# Define the osmesa block in PACKAGECONFIG for target, this block is -# not defined in the master recipe, effectively causing the osmesa -# feature to be disabled and -Dosmesa=none set. -PACKAGECONFIG_append_mx8 = " osmesa" +USE_OSMESA_ONLY ?= "no" -# Solve 'Problem encountered: OSMesa classic requires dri (classic) swrast.' -# by defining the dri swrast for mx8mm machine -DRIDRIVERS_append_mx8 = "swrast" +# Etnaviv support state for i.MX8 is unknown, therefore only enable OSMesa and +# disable Gallium for now. If you still want to enable Etnaviv, just set +# USE_OSMESA_ONLY_mx8 = "no" in your bbappend. +USE_OSMESA_ONLY_mx8 ?= "yes" -# Solve 'ERROR: Problem encountered: Only one swrast provider can be built' -# by excluding gallium support, dri is used together with 'classic' mesa backend. -PACKAGECONFIG_remove_mx8 = "gallium" +# Enable OSMesa which also requires dri (classic) swrast +PACKAGECONFIG_append = " ${@oe.utils.conditional('USE_OSMESA_ONLY', 'yes', ' osmesa', '', d)}" +PACKAGECONFIG_remove = " ${@oe.utils.conditional('USE_OSMESA_ONLY', 'yes', 'gallium', '', d)}" +DRIDRIVERS_append = "${@oe.utils.conditional('USE_OSMESA_ONLY', 'yes', 'swrast', '', d)}" BACKEND = \ "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \ -- cgit v1.2.3-54-g00ecf