From 5c10f0e8e36acb8b07680396d9a58feb6fbd41fe Mon Sep 17 00:00:00 2001 From: Nicolai Hähnle Date: Thu, 29 Jun 2017 17:37:18 +0200 Subject: gallium: move driinfo XML to pipe_loader 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. --- src/gallium/auxiliary/pipe-loader/Makefile.am | 1 + src/gallium/auxiliary/pipe-loader/Makefile.sources | 3 +- .../auxiliary/pipe-loader/driinfo_gallium.h | 34 +++++++++++++++++++ src/gallium/auxiliary/pipe-loader/pipe_loader.c | 5 +++ src/gallium/auxiliary/pipe-loader/pipe_loader.h | 2 ++ src/gallium/state_trackers/dri/dri_screen.c | 39 +--------------------- 6 files changed, 45 insertions(+), 39 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 8039a957b1..4ebfc97e6d 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 d6e3c2c060..66dd22ccc3 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 0000000000..08153a9a39 --- /dev/null +++ b/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h @@ -0,0 +1,34 @@ +// DriConf options supported by all Gallium DRI drivers. +DRI_CONF_SECTION_PERFORMANCE + DRI_CONF_MESA_GLTHREAD("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 cd93648fdc..bb65be1528 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 969feace7f..d24480dfd9 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 3d86cce2bc..2117dbb29a 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,43 +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_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 -- cgit v1.2.3