From 678dadf1237a3fb492ee2d8daa32d0205dea59ba Mon Sep 17 00:00:00 2001 From: =?utf8?q?Nicolai=20H=C3=A4hnle?= Date: Thu, 29 Jun 2017 17:37:18 +0200 Subject: [PATCH] gallium: move driinfo XML to pipe_loader MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit We will switch to the pipe_loader loading the configuration options, so that they can be passed to the driver independently of the state tracker. Put the description into its own file so that it can be merged easily with driver-specific options in future commits. Reviewed-by: Marek Olšák --- src/gallium/auxiliary/pipe-loader/Makefile.am | 1 + .../auxiliary/pipe-loader/Makefile.sources | 3 +- .../auxiliary/pipe-loader/driinfo_gallium.h | 35 ++++++++++++++++ .../auxiliary/pipe-loader/pipe_loader.c | 5 +++ .../auxiliary/pipe-loader/pipe_loader.h | 2 + src/gallium/state_trackers/dri/dri_screen.c | 40 +------------------ 6 files changed, 46 insertions(+), 40 deletions(-) create mode 100644 src/gallium/auxiliary/pipe-loader/driinfo_gallium.h diff --git a/src/gallium/auxiliary/pipe-loader/Makefile.am b/src/gallium/auxiliary/pipe-loader/Makefile.am index 8039a957b1b..4ebfc97e6d9 100644 --- a/src/gallium/auxiliary/pipe-loader/Makefile.am +++ b/src/gallium/auxiliary/pipe-loader/Makefile.am @@ -5,6 +5,7 @@ include $(top_srcdir)/src/gallium/Automake.inc AM_CFLAGS = \ -I$(top_srcdir)/src/loader \ -I$(top_srcdir)/src/gallium/winsys \ + -I$(top_builddir)/src/util \ $(GALLIUM_PIPE_LOADER_DEFINES) \ $(GALLIUM_CFLAGS) \ $(VISIBILITY_CFLAGS) diff --git a/src/gallium/auxiliary/pipe-loader/Makefile.sources b/src/gallium/auxiliary/pipe-loader/Makefile.sources index d6e3c2c060a..66dd22ccc3c 100644 --- a/src/gallium/auxiliary/pipe-loader/Makefile.sources +++ b/src/gallium/auxiliary/pipe-loader/Makefile.sources @@ -2,7 +2,8 @@ COMMON_SOURCES := \ pipe_loader.c \ pipe_loader.h \ pipe_loader_priv.h \ - pipe_loader_sw.c + pipe_loader_sw.c \ + driinfo_gallium.h DRM_SOURCES := \ pipe_loader_drm.c diff --git a/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h b/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h new file mode 100644 index 00000000000..48a57c981ed --- /dev/null +++ b/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h @@ -0,0 +1,35 @@ +// DriConf options supported by all Gallium DRI drivers. +DRI_CONF_SECTION_PERFORMANCE + DRI_CONF_MESA_GLTHREAD("false") + DRI_CONF_MESA_NO_ERROR("false") + DRI_CONF_DISABLE_EXT_BUFFER_AGE("false") + DRI_CONF_DISABLE_OML_SYNC_CONTROL("false") +DRI_CONF_SECTION_END + +DRI_CONF_SECTION_QUALITY + DRI_CONF_FORCE_S3TC_ENABLE("false") + DRI_CONF_PP_CELSHADE(0) + DRI_CONF_PP_NORED(0) + DRI_CONF_PP_NOGREEN(0) + DRI_CONF_PP_NOBLUE(0) + DRI_CONF_PP_JIMENEZMLAA(0, 0, 32) + DRI_CONF_PP_JIMENEZMLAA_COLOR(0, 0, 32) +DRI_CONF_SECTION_END + +DRI_CONF_SECTION_DEBUG + DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN("false") + DRI_CONF_DISABLE_GLSL_LINE_CONTINUATIONS("false") + DRI_CONF_DISABLE_BLEND_FUNC_EXTENDED("false") + DRI_CONF_DISABLE_SHADER_BIT_ENCODING("false") + DRI_CONF_FORCE_GLSL_VERSION(0) + DRI_CONF_ALLOW_GLSL_EXTENSION_DIRECTIVE_MIDSHADER("false") + DRI_CONF_ALLOW_GLSL_BUILTIN_VARIABLE_REDECLARATION("false") + DRI_CONF_ALLOW_HIGHER_COMPAT_VERSION("false") + DRI_CONF_FORCE_GLSL_ABS_SQRT("false") + DRI_CONF_GLSL_CORRECT_DERIVATIVES_AFTER_DISCARD("false") +DRI_CONF_SECTION_END + +DRI_CONF_SECTION_MISCELLANEOUS + DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER("false") + DRI_CONF_GLSL_ZERO_INIT("false") +DRI_CONF_SECTION_END diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader.c b/src/gallium/auxiliary/pipe-loader/pipe_loader.c index cd93648fdc3..bb65be15289 100644 --- a/src/gallium/auxiliary/pipe-loader/pipe_loader.c +++ b/src/gallium/auxiliary/pipe-loader/pipe_loader.c @@ -31,6 +31,7 @@ #include "util/u_memory.h" #include "util/u_string.h" #include "util/u_dl.h" +#include "util/xmlpool.h" #ifdef _MSC_VER #include @@ -46,6 +47,10 @@ static int (*backends[])(struct pipe_loader_device **, int) = { &pipe_loader_sw_probe }; +const char gallium_driinfo_xml[] = +#include "driinfo_gallium.h" +; + int pipe_loader_probe(struct pipe_loader_device **devs, int ndev) { diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader.h b/src/gallium/auxiliary/pipe-loader/pipe_loader.h index 969feace7f1..d24480dfd91 100644 --- a/src/gallium/auxiliary/pipe-loader/pipe_loader.h +++ b/src/gallium/auxiliary/pipe-loader/pipe_loader.h @@ -183,6 +183,8 @@ pipe_loader_drm_probe(struct pipe_loader_device **devs, int ndev); bool pipe_loader_drm_probe_fd(struct pipe_loader_device **dev, int fd); +extern const char gallium_driinfo_xml[]; + #ifdef __cplusplus } #endif diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c index 43e67b6555f..79d7282b511 100644 --- a/src/gallium/state_trackers/dri/dri_screen.c +++ b/src/gallium/state_trackers/dri/dri_screen.c @@ -30,7 +30,6 @@ */ #include "utils.h" -#include "util/xmlpool.h" #include "dri_screen.h" #include "dri_context.h" @@ -51,44 +50,7 @@ const __DRIconfigOptionsExtension gallium_config_options = { .base = { __DRI_CONFIG_OPTIONS, 1 }, - .xml = - - DRI_CONF_BEGIN - DRI_CONF_SECTION_PERFORMANCE - DRI_CONF_MESA_GLTHREAD("false") - DRI_CONF_MESA_NO_ERROR("false") - DRI_CONF_DISABLE_EXT_BUFFER_AGE("false") - DRI_CONF_DISABLE_OML_SYNC_CONTROL("false") - DRI_CONF_SECTION_END - - DRI_CONF_SECTION_QUALITY - DRI_CONF_FORCE_S3TC_ENABLE("false") - DRI_CONF_PP_CELSHADE(0) - DRI_CONF_PP_NORED(0) - DRI_CONF_PP_NOGREEN(0) - DRI_CONF_PP_NOBLUE(0) - DRI_CONF_PP_JIMENEZMLAA(0, 0, 32) - DRI_CONF_PP_JIMENEZMLAA_COLOR(0, 0, 32) - DRI_CONF_SECTION_END - - DRI_CONF_SECTION_DEBUG - DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN("false") - DRI_CONF_DISABLE_GLSL_LINE_CONTINUATIONS("false") - DRI_CONF_DISABLE_BLEND_FUNC_EXTENDED("false") - DRI_CONF_DISABLE_SHADER_BIT_ENCODING("false") - DRI_CONF_FORCE_GLSL_VERSION(0) - DRI_CONF_ALLOW_GLSL_EXTENSION_DIRECTIVE_MIDSHADER("false") - DRI_CONF_ALLOW_GLSL_BUILTIN_VARIABLE_REDECLARATION("false") - DRI_CONF_ALLOW_HIGHER_COMPAT_VERSION("false") - DRI_CONF_FORCE_GLSL_ABS_SQRT("false") - DRI_CONF_GLSL_CORRECT_DERIVATIVES_AFTER_DISCARD("false") - DRI_CONF_SECTION_END - - DRI_CONF_SECTION_MISCELLANEOUS - DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER("false") - DRI_CONF_GLSL_ZERO_INIT("false") - DRI_CONF_SECTION_END - DRI_CONF_END + .xml = gallium_driinfo_xml }; #define false 0 -- 2.30.2