• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* This is file is generated automatically. Don't edit!  */
2 /*
3  * XML DRI client-side driver configuration
4  * Copyright (C) 2003 Felix Kuehling
5  *
6  * Permission is hereby granted, free of charge, to any person obtaining a
7  * copy of this software and associated documentation files (the "Software"),
8  * to deal in the Software without restriction, including without limitation
9  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
10  * and/or sell copies of the Software, and to permit persons to whom the
11  * Software is furnished to do so, subject to the following conditions:
12  *
13  * The above copyright notice and this permission notice shall be included
14  * in all copies or substantial portions of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
19  * FELIX KUEHLING, OR ANY OTHER CONTRIBUTORS BE LIABLE FOR ANY CLAIM,
20  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
21  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
22  * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23  *
24  */
25 /**
26  * \file t_options.h
27  * \brief Templates of common options
28  * \author Felix Kuehling
29  *
30  * This file defines macros for common options that can be used to
31  * construct driConfigOptions in the drivers. This file is only a
32  * template containing English descriptions for options wrapped in
33  * gettext(). xgettext can be used to extract translatable
34  * strings. These strings can then be translated by anyone familiar
35  * with GNU gettext. gen_xmlpool.py takes this template and fills in
36  * all the translations. The result (options.h) is included by
37  * xmlpool.h which in turn can be included by drivers.
38  *
39  * The macros used to describe options in this file are defined in
40  * src/util/xmlpool.h.
41  */
42 
43 /* This is needed for xgettext to extract translatable strings.
44  * gen_xmlpool.py will discard this line. */
45 /* #include <libintl.h>
46  * commented out by gen_xmlpool.py */
47 
48 /*
49  * predefined option sections and options with multi-lingual descriptions
50  */
51 
52 
53 /**
54  * \brief Debugging options
55  */
56 #define DRI_CONF_SECTION_DEBUG \
57 DRI_CONF_SECTION_BEGIN \
58         DRI_CONF_DESC(en,"Debugging") \
59         DRI_CONF_DESC(de,"Fehlersuche") \
60         DRI_CONF_DESC(es,"Depuración") \
61         DRI_CONF_DESC(nl,"Debuggen") \
62         DRI_CONF_DESC(fr,"Debogage") \
63         DRI_CONF_DESC(sv,"Felsökning")
64 
65 #define DRI_CONF_ALWAYS_FLUSH_BATCH(def) \
66 DRI_CONF_OPT_BEGIN_B(always_flush_batch, def) \
67         DRI_CONF_DESC(en,"Enable flushing batchbuffer after each draw call") \
68         DRI_CONF_DESC(de,"Aktiviere sofortige Leerung des Stapelpuffers nach jedem Zeichenaufruf") \
69         DRI_CONF_DESC(es,"Habilitar vaciado del batchbuffer después de cada llamada de dibujo") \
70         DRI_CONF_DESC(nl,"Enable flushing batchbuffer after each draw call") \
71         DRI_CONF_DESC(fr,"Enable flushing batchbuffer after each draw call") \
72         DRI_CONF_DESC(sv,"Enable flushing batchbuffer after each draw call") \
73 DRI_CONF_OPT_END
74 
75 #define DRI_CONF_ALWAYS_FLUSH_CACHE(def) \
76 DRI_CONF_OPT_BEGIN_B(always_flush_cache, def) \
77         DRI_CONF_DESC(en,"Enable flushing GPU caches with each draw call") \
78         DRI_CONF_DESC(de,"Aktiviere sofortige Leerung der GPU-Zwischenspeicher mit jedem Zeichenaufruf") \
79         DRI_CONF_DESC(es,"Habilitar vaciado de los cachés GPU con cada llamada de dibujo") \
80         DRI_CONF_DESC(nl,"Enable flushing GPU caches with each draw call") \
81         DRI_CONF_DESC(fr,"Enable flushing GPU caches with each draw call") \
82         DRI_CONF_DESC(sv,"Enable flushing GPU caches with each draw call") \
83 DRI_CONF_OPT_END
84 
85 #define DRI_CONF_DISABLE_THROTTLING(def) \
86 DRI_CONF_OPT_BEGIN_B(disable_throttling, def) \
87         DRI_CONF_DESC(en,"Disable throttling on first batch after flush") \
88         DRI_CONF_DESC(de,"Disable throttling on first batch after flush") \
89         DRI_CONF_DESC(es,"Deshabilitar regulación del primer lote después de vaciar") \
90         DRI_CONF_DESC(nl,"Disable throttling on first batch after flush") \
91         DRI_CONF_DESC(fr,"Disable throttling on first batch after flush") \
92         DRI_CONF_DESC(sv,"Disable throttling on first batch after flush") \
93 DRI_CONF_OPT_END
94 
95 #define DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN(def) \
96 DRI_CONF_OPT_BEGIN_B(force_glsl_extensions_warn, def) \
97         DRI_CONF_DESC(en,"Force GLSL extension default behavior to 'warn'") \
98         DRI_CONF_DESC(de,"Force GLSL extension default behavior to 'warn'") \
99         DRI_CONF_DESC(es,"Forzar que el comportamiento por defecto de las extensiones GLSL sea 'warn'") \
100         DRI_CONF_DESC(nl,"Force GLSL extension default behavior to 'warn'") \
101         DRI_CONF_DESC(fr,"Force GLSL extension default behavior to 'warn'") \
102         DRI_CONF_DESC(sv,"Force GLSL extension default behavior to 'warn'") \
103 DRI_CONF_OPT_END
104 
105 #define DRI_CONF_DISABLE_BLEND_FUNC_EXTENDED(def) \
106 DRI_CONF_OPT_BEGIN_B(disable_blend_func_extended, def) \
107         DRI_CONF_DESC(en,"Disable dual source blending") \
108         DRI_CONF_DESC(de,"Disable dual source blending") \
109         DRI_CONF_DESC(es,"Deshabilitar mezcla de fuente dual") \
110         DRI_CONF_DESC(nl,"Disable dual source blending") \
111         DRI_CONF_DESC(fr,"Disable dual source blending") \
112         DRI_CONF_DESC(sv,"Disable dual source blending") \
113 DRI_CONF_OPT_END
114 
115 #define DRI_CONF_DISABLE_ARB_GPU_SHADER5(def) \
116 DRI_CONF_OPT_BEGIN_B(disable_arb_gpu_shader5, def) \
117         DRI_CONF_DESC(en,"Disable GL_ARB_gpu_shader5") \
118 DRI_CONF_OPT_END
119 
120 #define DRI_CONF_DUAL_COLOR_BLEND_BY_LOCATION(def) \
121 DRI_CONF_OPT_BEGIN_B(dual_color_blend_by_location, def) \
122         DRI_CONF_DESC(en,"Identify dual color blending sources by location rather than index") \
123         DRI_CONF_DESC(de,"Identify dual color blending sources by location rather than index") \
124         DRI_CONF_DESC(es,"Identify dual color blending sources by location rather than index") \
125         DRI_CONF_DESC(nl,"Identify dual color blending sources by location rather than index") \
126         DRI_CONF_DESC(fr,"Identify dual color blending sources by location rather than index") \
127         DRI_CONF_DESC(sv,"Identify dual color blending sources by location rather than index") \
128 DRI_CONF_OPT_END
129 
130 #define DRI_CONF_DISABLE_GLSL_LINE_CONTINUATIONS(def) \
131 DRI_CONF_OPT_BEGIN_B(disable_glsl_line_continuations, def) \
132         DRI_CONF_DESC(en,"Disable backslash-based line continuations in GLSL source") \
133         DRI_CONF_DESC(de,"Disable backslash-based line continuations in GLSL source") \
134         DRI_CONF_DESC(es,"Deshabilitar continuaciones de línea basadas en barra inversa en el código GLSL") \
135         DRI_CONF_DESC(nl,"Disable backslash-based line continuations in GLSL source") \
136         DRI_CONF_DESC(fr,"Disable backslash-based line continuations in GLSL source") \
137         DRI_CONF_DESC(sv,"Disable backslash-based line continuations in GLSL source") \
138 DRI_CONF_OPT_END
139 
140 #define DRI_CONF_FORCE_GLSL_VERSION(def) \
141 DRI_CONF_OPT_BEGIN_V(force_glsl_version, int, def, "0:999") \
142         DRI_CONF_DESC(en,"Force a default GLSL version for shaders that lack an explicit #version line") \
143         DRI_CONF_DESC(de,"Force a default GLSL version for shaders that lack an explicit #version line") \
144         DRI_CONF_DESC(es,"Forzar una versión de GLSL por defecto en los shaders a los cuales les falta una línea #version explícita") \
145         DRI_CONF_DESC(nl,"Force a default GLSL version for shaders that lack an explicit #version line") \
146         DRI_CONF_DESC(fr,"Force a default GLSL version for shaders that lack an explicit #version line") \
147         DRI_CONF_DESC(sv,"Force a default GLSL version for shaders that lack an explicit #version line") \
148 DRI_CONF_OPT_END
149 
150 #define DRI_CONF_ALLOW_GLSL_EXTENSION_DIRECTIVE_MIDSHADER(def) \
151 DRI_CONF_OPT_BEGIN_B(allow_glsl_extension_directive_midshader, def) \
152         DRI_CONF_DESC(en,"Allow GLSL #extension directives in the middle of shaders") \
153         DRI_CONF_DESC(de,"Allow GLSL #extension directives in the middle of shaders") \
154         DRI_CONF_DESC(es,"Permite directivas #extension GLSL en medio de los shaders") \
155         DRI_CONF_DESC(nl,"Allow GLSL #extension directives in the middle of shaders") \
156         DRI_CONF_DESC(fr,"Allow GLSL #extension directives in the middle of shaders") \
157         DRI_CONF_DESC(sv,"Allow GLSL #extension directives in the middle of shaders") \
158 DRI_CONF_OPT_END
159 
160 #define DRI_CONF_ALLOW_GLSL_BUILTIN_CONST_EXPRESSION(def) \
161 DRI_CONF_OPT_BEGIN_B(allow_glsl_builtin_const_expression, def) \
162         DRI_CONF_DESC(en,"Allow builtins as part of constant expressions") \
163         DRI_CONF_DESC(de,"Allow builtins as part of constant expressions") \
164         DRI_CONF_DESC(es,"Allow builtins as part of constant expressions") \
165         DRI_CONF_DESC(nl,"Allow builtins as part of constant expressions") \
166         DRI_CONF_DESC(fr,"Allow builtins as part of constant expressions") \
167         DRI_CONF_DESC(sv,"Allow builtins as part of constant expressions") \
168 DRI_CONF_OPT_END
169 
170 #define DRI_CONF_ALLOW_GLSL_RELAXED_ES(def) \
171 DRI_CONF_OPT_BEGIN_B(allow_glsl_relaxed_es, def) \
172         DRI_CONF_DESC(en,"Allow some relaxation of GLSL ES shader restrictions") \
173         DRI_CONF_DESC(de,"Allow some relaxation of GLSL ES shader restrictions") \
174         DRI_CONF_DESC(es,"Allow some relaxation of GLSL ES shader restrictions") \
175         DRI_CONF_DESC(nl,"Allow some relaxation of GLSL ES shader restrictions") \
176         DRI_CONF_DESC(fr,"Allow some relaxation of GLSL ES shader restrictions") \
177         DRI_CONF_DESC(sv,"Allow some relaxation of GLSL ES shader restrictions") \
178 DRI_CONF_OPT_END
179 
180 #define DRI_CONF_ALLOW_GLSL_BUILTIN_VARIABLE_REDECLARATION(def) \
181 DRI_CONF_OPT_BEGIN_B(allow_glsl_builtin_variable_redeclaration, def) \
182         DRI_CONF_DESC(en,"Allow GLSL built-in variables to be redeclared verbatim") \
183         DRI_CONF_DESC(de,"Allow GLSL built-in variables to be redeclared verbatim") \
184         DRI_CONF_DESC(es,"Allow GLSL built-in variables to be redeclared verbatim") \
185         DRI_CONF_DESC(nl,"Allow GLSL built-in variables to be redeclared verbatim") \
186         DRI_CONF_DESC(fr,"Allow GLSL built-in variables to be redeclared verbatim") \
187         DRI_CONF_DESC(sv,"Allow GLSL built-in variables to be redeclared verbatim") \
188 DRI_CONF_OPT_END
189 
190 #define DRI_CONF_ALLOW_HIGHER_COMPAT_VERSION(def) \
191 DRI_CONF_OPT_BEGIN_B(allow_higher_compat_version, def) \
192         DRI_CONF_DESC(en,"Allow a higher compat profile (version 3.1+) for apps that request it") \
193         DRI_CONF_DESC(de,"Allow a higher compat profile (version 3.1+) for apps that request it") \
194         DRI_CONF_DESC(es,"Allow a higher compat profile (version 3.1+) for apps that request it") \
195         DRI_CONF_DESC(nl,"Allow a higher compat profile (version 3.1+) for apps that request it") \
196         DRI_CONF_DESC(fr,"Allow a higher compat profile (version 3.1+) for apps that request it") \
197         DRI_CONF_DESC(sv,"Allow a higher compat profile (version 3.1+) for apps that request it") \
198 DRI_CONF_OPT_END
199 
200 #define DRI_CONF_FORCE_GLSL_ABS_SQRT(def) \
201 DRI_CONF_OPT_BEGIN_B(force_glsl_abs_sqrt, def) \
202         DRI_CONF_DESC(en,"Force computing the absolute value for sqrt() and inversesqrt()") \
203         DRI_CONF_DESC(de,"Force computing the absolute value for sqrt() and inversesqrt()") \
204         DRI_CONF_DESC(es,"Force computing the absolute value for sqrt() and inversesqrt()") \
205         DRI_CONF_DESC(nl,"Force computing the absolute value for sqrt() and inversesqrt()") \
206         DRI_CONF_DESC(fr,"Force computing the absolute value for sqrt() and inversesqrt()") \
207         DRI_CONF_DESC(sv,"Force computing the absolute value for sqrt() and inversesqrt()") \
208 DRI_CONF_OPT_END
209 
210 #define DRI_CONF_GLSL_CORRECT_DERIVATIVES_AFTER_DISCARD(def) \
211 DRI_CONF_OPT_BEGIN_B(glsl_correct_derivatives_after_discard, def) \
212         DRI_CONF_DESC(en,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
213         DRI_CONF_DESC(de,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
214         DRI_CONF_DESC(es,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
215         DRI_CONF_DESC(nl,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
216         DRI_CONF_DESC(fr,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
217         DRI_CONF_DESC(sv,"Implicit and explicit derivatives after a discard behave as if the discard didn't happen") \
218 DRI_CONF_OPT_END
219 
220 #define DRI_CONF_ALLOW_GLSL_CROSS_STAGE_INTERPOLATION_MISMATCH(def) \
221 DRI_CONF_OPT_BEGIN_B(allow_glsl_cross_stage_interpolation_mismatch, def) \
222         DRI_CONF_DESC(en,"Allow interpolation qualifier mismatch across shader stages") \
223         DRI_CONF_DESC(de,"Allow interpolation qualifier mismatch across shader stages") \
224         DRI_CONF_DESC(es,"Allow interpolation qualifier mismatch across shader stages") \
225         DRI_CONF_DESC(nl,"Allow interpolation qualifier mismatch across shader stages") \
226         DRI_CONF_DESC(fr,"Allow interpolation qualifier mismatch across shader stages") \
227         DRI_CONF_DESC(sv,"Allow interpolation qualifier mismatch across shader stages") \
228 DRI_CONF_OPT_END
229 
230 #define DRI_CONF_ALLOW_GLSL_LAYOUT_QUALIFIER_ON_FUNCTION_PARAMETERS(def) \
231 DRI_CONF_OPT_BEGIN_B(allow_glsl_layout_qualifier_on_function_parameters, def) \
232         DRI_CONF_DESC(en,"Allow layout qualifiers on function parameters.") \
233         DRI_CONF_DESC(de,"Allow layout qualifiers on function parameters.") \
234         DRI_CONF_DESC(es,"Allow layout qualifiers on function parameters.") \
235         DRI_CONF_DESC(nl,"Allow layout qualifiers on function parameters.") \
236         DRI_CONF_DESC(fr,"Allow layout qualifiers on function parameters.") \
237         DRI_CONF_DESC(sv,"Allow layout qualifiers on function parameters.") \
238 DRI_CONF_OPT_END
239 
240 #define DRI_CONF_FORCE_GL_VENDOR(def) \
241 DRI_CONF_OPT_BEGIN(force_gl_vendor, string, def) \
242         DRI_CONF_DESC(en,"Allow GPU vendor to be overridden.") \
243         DRI_CONF_DESC(de,"Allow GPU vendor to be overridden.") \
244         DRI_CONF_DESC(es,"Allow GPU vendor to be overridden.") \
245         DRI_CONF_DESC(nl,"Allow GPU vendor to be overridden.") \
246         DRI_CONF_DESC(fr,"Allow GPU vendor to be overridden.") \
247         DRI_CONF_DESC(sv,"Allow GPU vendor to be overridden.") \
248 DRI_CONF_OPT_END
249 
250 #define DRI_CONF_FORCE_COMPAT_PROFILE(def) \
251 DRI_CONF_OPT_BEGIN_B(force_compat_profile, def) \
252         DRI_CONF_DESC(en,"Force an OpenGL compatibility context") \
253         DRI_CONF_DESC(de,"Force an OpenGL compatibility context") \
254         DRI_CONF_DESC(es,"Force an OpenGL compatibility context") \
255         DRI_CONF_DESC(nl,"Force an OpenGL compatibility context") \
256         DRI_CONF_DESC(fr,"Force an OpenGL compatibility context") \
257         DRI_CONF_DESC(sv,"Force an OpenGL compatibility context") \
258 DRI_CONF_OPT_END
259 
260 /**
261  * \brief Image quality-related options
262  */
263 #define DRI_CONF_SECTION_QUALITY \
264 DRI_CONF_SECTION_BEGIN \
265         DRI_CONF_DESC(en,"Image Quality") \
266         DRI_CONF_DESC(de,"Bildqualität") \
267         DRI_CONF_DESC(es,"Calidad de imagen") \
268         DRI_CONF_DESC(nl,"Beeldkwaliteit") \
269         DRI_CONF_DESC(fr,"Qualité d'image") \
270         DRI_CONF_DESC(sv,"Bildkvalitet")
271 
272 #define DRI_CONF_PRECISE_TRIG(def) \
273 DRI_CONF_OPT_BEGIN_B(precise_trig, def) \
274         DRI_CONF_DESC(en,"Prefer accuracy over performance in trig functions") \
275         DRI_CONF_DESC(de,"Prefer accuracy over performance in trig functions") \
276         DRI_CONF_DESC(es,"Prefer accuracy over performance in trig functions") \
277         DRI_CONF_DESC(nl,"Prefer accuracy over performance in trig functions") \
278         DRI_CONF_DESC(fr,"Prefer accuracy over performance in trig functions") \
279         DRI_CONF_DESC(sv,"Prefer accuracy over performance in trig functions") \
280 DRI_CONF_OPT_END
281 
282 #define DRI_CONF_PP_CELSHADE(def) \
283 DRI_CONF_OPT_BEGIN_V(pp_celshade,enum,def,"0:1") \
284         DRI_CONF_DESC(en,"A post-processing filter to cel-shade the output") \
285         DRI_CONF_DESC(de,"Nachbearbeitungsfilter für Cell Shading") \
286         DRI_CONF_DESC(es,"Un filtro de postprocesamiento para aplicar cel shading a la salida") \
287         DRI_CONF_DESC(nl,"A post-processing filter to cel-shade the output") \
288         DRI_CONF_DESC(fr,"A post-processing filter to cel-shade the output") \
289         DRI_CONF_DESC(sv,"A post-processing filter to cel-shade the output") \
290 DRI_CONF_OPT_END
291 
292 #define DRI_CONF_PP_NORED(def) \
293 DRI_CONF_OPT_BEGIN_V(pp_nored,enum,def,"0:1") \
294         DRI_CONF_DESC(en,"A post-processing filter to remove the red channel") \
295         DRI_CONF_DESC(de,"Nachbearbeitungsfilter zum Entfernen des Rotkanals") \
296         DRI_CONF_DESC(es,"Un filtro de postprocesamiento para eliminar el canal rojo") \
297         DRI_CONF_DESC(nl,"A post-processing filter to remove the red channel") \
298         DRI_CONF_DESC(fr,"A post-processing filter to remove the red channel") \
299         DRI_CONF_DESC(sv,"A post-processing filter to remove the red channel") \
300 DRI_CONF_OPT_END
301 
302 #define DRI_CONF_PP_NOGREEN(def) \
303 DRI_CONF_OPT_BEGIN_V(pp_nogreen,enum,def,"0:1") \
304         DRI_CONF_DESC(en,"A post-processing filter to remove the green channel") \
305         DRI_CONF_DESC(de,"Nachbearbeitungsfilter zum Entfernen des Grünkanals") \
306         DRI_CONF_DESC(es,"Un filtro de postprocesamiento para eliminar el canal verde") \
307         DRI_CONF_DESC(nl,"A post-processing filter to remove the green channel") \
308         DRI_CONF_DESC(fr,"A post-processing filter to remove the green channel") \
309         DRI_CONF_DESC(sv,"A post-processing filter to remove the green channel") \
310 DRI_CONF_OPT_END
311 
312 #define DRI_CONF_PP_NOBLUE(def) \
313 DRI_CONF_OPT_BEGIN_V(pp_noblue,enum,def,"0:1") \
314         DRI_CONF_DESC(en,"A post-processing filter to remove the blue channel") \
315         DRI_CONF_DESC(de,"Nachbearbeitungsfilter zum Entfernen des Blaukanals") \
316         DRI_CONF_DESC(es,"Un filtro de postprocesamiento para eliminar el canal azul") \
317         DRI_CONF_DESC(nl,"A post-processing filter to remove the blue channel") \
318         DRI_CONF_DESC(fr,"A post-processing filter to remove the blue channel") \
319         DRI_CONF_DESC(sv,"A post-processing filter to remove the blue channel") \
320 DRI_CONF_OPT_END
321 
322 #define DRI_CONF_PP_JIMENEZMLAA(def,min,max) \
323 DRI_CONF_OPT_BEGIN_V(pp_jimenezmlaa,int,def, # min ":" # max ) \
324         DRI_CONF_DESC(en,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality") \
325         DRI_CONF_DESC(de,"Morphologische Kantenglättung (Anti-Aliasing) basierend auf Jimenez' MLAA. 0 für deaktiviert, 8 für Standardqualität") \
326         DRI_CONF_DESC(es,"Antialiasing morfológico basado en el MLAA de Jimenez. 0 para deshabilitar, 8 para calidad por defecto") \
327         DRI_CONF_DESC(nl,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality") \
328         DRI_CONF_DESC(fr,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality") \
329         DRI_CONF_DESC(sv,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality") \
330 DRI_CONF_OPT_END
331 
332 #define DRI_CONF_PP_JIMENEZMLAA_COLOR(def,min,max) \
333 DRI_CONF_OPT_BEGIN_V(pp_jimenezmlaa_color,int,def, # min ":" # max ) \
334         DRI_CONF_DESC(en,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality. Color version, usable with 2d GL apps") \
335         DRI_CONF_DESC(de,"Morphologische Kantenglättung (Anti-Aliasing) basierend auf Jimenez' MLAA. 0 für deaktiviert, 8 für Standardqualität. Farbversion, für 2D-Anwendungen") \
336         DRI_CONF_DESC(es,"Antialiasing morfológico basado en el MLAA de Jimenez. 0 para deshabilitar, 8 para calidad por defecto. Versión en color, usable con aplicaciones GL 2D") \
337         DRI_CONF_DESC(nl,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality. Color version, usable with 2d GL apps") \
338         DRI_CONF_DESC(fr,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality. Color version, usable with 2d GL apps") \
339         DRI_CONF_DESC(sv,"Morphological anti-aliasing based on Jimenez\' MLAA. 0 to disable, 8 for default quality. Color version, usable with 2d GL apps") \
340 DRI_CONF_OPT_END
341 
342 
343 
344 /**
345  * \brief Performance-related options
346  */
347 #define DRI_CONF_SECTION_PERFORMANCE \
348 DRI_CONF_SECTION_BEGIN \
349         DRI_CONF_DESC(en,"Performance") \
350         DRI_CONF_DESC(de,"Leistung") \
351         DRI_CONF_DESC(es,"Rendimiento") \
352         DRI_CONF_DESC(nl,"Prestatie") \
353         DRI_CONF_DESC(fr,"Performance") \
354         DRI_CONF_DESC(sv,"Prestanda")
355 
356 #define DRI_CONF_VBLANK_NEVER 0
357 #define DRI_CONF_VBLANK_DEF_INTERVAL_0 1
358 #define DRI_CONF_VBLANK_DEF_INTERVAL_1 2
359 #define DRI_CONF_VBLANK_ALWAYS_SYNC 3
360 #define DRI_CONF_VBLANK_MODE(def) \
361 DRI_CONF_OPT_BEGIN_V(vblank_mode,enum,def,"0:3") \
362         DRI_CONF_DESC_BEGIN(en,"Synchronization with vertical refresh (swap intervals)") \
363                 DRI_CONF_ENUM(0,"Never synchronize with vertical refresh, ignore application's choice") \
364                 DRI_CONF_ENUM(1,"Initial swap interval 0, obey application's choice") \
365                 DRI_CONF_ENUM(2,"Initial swap interval 1, obey application's choice") \
366                 DRI_CONF_ENUM(3,"Always synchronize with vertical refresh, application chooses the minimum swap interval") \
367         DRI_CONF_DESC_END \
368         DRI_CONF_DESC_BEGIN(de,"Synchronisation mit der vertikalen Bildwiederholung") \
369                 DRI_CONF_ENUM(0,"Niemals mit der Bildwiederholung synchronisieren, Anweisungen der Anwendung ignorieren") \
370                 DRI_CONF_ENUM(1,"Initiales Bildinterval 0, Anweisungen der Anwendung gehorchen") \
371                 DRI_CONF_ENUM(2,"Initiales Bildinterval 1, Anweisungen der Anwendung gehorchen") \
372                 DRI_CONF_ENUM(3,"Immer mit der Bildwiederholung synchronisieren, Anwendung wählt das minimale Bildintervall") \
373         DRI_CONF_DESC_END \
374         DRI_CONF_DESC_BEGIN(es,"Sincronización con el refresco vertical (intervalos de intercambio)") \
375                 DRI_CONF_ENUM(0,"No sincronizar nunca con el refresco vertical, ignorar la elección de la aplicación") \
376                 DRI_CONF_ENUM(1,"Intervalo de intercambio inicial 0, obedecer la elección de la aplicación") \
377                 DRI_CONF_ENUM(2,"Intervalo de intercambio inicial 1, obedecer la elección de la aplicación") \
378                 DRI_CONF_ENUM(3,"Sincronizar siempre con el refresco vertical, la aplicación elige el intervalo de intercambio mínimo") \
379         DRI_CONF_DESC_END \
380         DRI_CONF_DESC_BEGIN(nl,"Synchronisatie met verticale verversing (interval omwisselen)") \
381                 DRI_CONF_ENUM(0,"Nooit synchroniseren met verticale verversing, negeer de keuze van de applicatie") \
382                 DRI_CONF_ENUM(1,"Initïeel omwisselingsinterval 0, honoreer de keuze van de applicatie") \
383                 DRI_CONF_ENUM(2,"Initïeel omwisselingsinterval 1, honoreer de keuze van de applicatie") \
384                 DRI_CONF_ENUM(3,"Synchroniseer altijd met verticale verversing, de applicatie kiest het minimum omwisselingsinterval") \
385         DRI_CONF_DESC_END \
386         DRI_CONF_DESC_BEGIN(fr,"Synchronisation de l'affichage avec le balayage vertical") \
387                 DRI_CONF_ENUM(0,"Ne jamais synchroniser avec le balayage vertical, ignorer le choix de l'application") \
388                 DRI_CONF_ENUM(1,"Ne pas synchroniser avec le balayage vertical par défaut, mais obéir au choix de l'application") \
389                 DRI_CONF_ENUM(2,"Synchroniser avec le balayage vertical par défaut, mais obéir au choix de l'application") \
390                 DRI_CONF_ENUM(3,"Toujours synchroniser avec le balayage vertical, l'application choisit l'intervalle minimal") \
391         DRI_CONF_DESC_END \
392         DRI_CONF_DESC_BEGIN(sv,"Synkronisering med vertikal uppdatering (växlingsintervall)") \
393                 DRI_CONF_ENUM(0,"Synkronisera aldrig med vertikal uppdatering, ignorera programmets val") \
394                 DRI_CONF_ENUM(1,"Initialt växlingsintervall 0, följ programmets val") \
395                 DRI_CONF_ENUM(2,"Initialt växlingsintervall 1, följ programmets val") \
396                 DRI_CONF_ENUM(3,"Synkronisera alltid med vertikal uppdatering, programmet väljer den minsta växlingsintervallen") \
397         DRI_CONF_DESC_END \
398 DRI_CONF_OPT_END
399 
400 #define DRI_CONF_ADAPTIVE_SYNC(def) \
401 DRI_CONF_OPT_BEGIN_B(adaptive_sync,def) \
402         DRI_CONF_DESC(en,"Adapt the monitor sync to the application performance (when possible)") \
403         DRI_CONF_DESC(de,"Adapt the monitor sync to the application performance (when possible)") \
404         DRI_CONF_DESC(es,"Adapt the monitor sync to the application performance (when possible)") \
405         DRI_CONF_DESC(nl,"Adapt the monitor sync to the application performance (when possible)") \
406         DRI_CONF_DESC(fr,"Adapt the monitor sync to the application performance (when possible)") \
407         DRI_CONF_DESC(sv,"Adapt the monitor sync to the application performance (when possible)") \
408 DRI_CONF_OPT_END
409 
410 #define DRI_CONF_VK_WSI_FORCE_BGRA8_UNORM_FIRST(def) \
411 DRI_CONF_OPT_BEGIN_B(vk_wsi_force_bgra8_unorm_first, def) \
412         DRI_CONF_DESC(en,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
413         DRI_CONF_DESC(de,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
414         DRI_CONF_DESC(es,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
415         DRI_CONF_DESC(nl,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
416         DRI_CONF_DESC(fr,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
417         DRI_CONF_DESC(sv,"Force vkGetPhysicalDeviceSurfaceFormatsKHR to return VK_FORMAT_B8G8R8A8_UNORM as the first format") \
418 DRI_CONF_OPT_END
419 
420 #define DRI_CONF_VK_X11_OVERRIDE_MIN_IMAGE_COUNT(def) \
421 DRI_CONF_OPT_BEGIN_V(vk_x11_override_min_image_count, int, def, "0:999") \
422         DRI_CONF_DESC(en,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
423         DRI_CONF_DESC(de,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
424         DRI_CONF_DESC(es,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
425         DRI_CONF_DESC(nl,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
426         DRI_CONF_DESC(fr,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
427         DRI_CONF_DESC(sv,"Override the VkSurfaceCapabilitiesKHR::minImageCount (0 = no override)") \
428 DRI_CONF_OPT_END
429 
430 #define DRI_CONF_VK_X11_STRICT_IMAGE_COUNT(def) \
431 DRI_CONF_OPT_BEGIN_B(vk_x11_strict_image_count, def) \
432         DRI_CONF_DESC(en,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
433         DRI_CONF_DESC(de,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
434         DRI_CONF_DESC(es,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
435         DRI_CONF_DESC(nl,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
436         DRI_CONF_DESC(fr,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
437         DRI_CONF_DESC(sv,"Force the X11 WSI to create exactly the number of image specified by the application in VkSwapchainCreateInfoKHR::minImageCount") \
438 DRI_CONF_OPT_END
439 
440 #define DRI_CONF_MESA_GLTHREAD(def) \
441 DRI_CONF_OPT_BEGIN_B(mesa_glthread, def) \
442         DRI_CONF_DESC(en,"Enable offloading GL driver work to a separate thread") \
443         DRI_CONF_DESC(de,"Enable offloading GL driver work to a separate thread") \
444         DRI_CONF_DESC(es,"Enable offloading GL driver work to a separate thread") \
445         DRI_CONF_DESC(nl,"Enable offloading GL driver work to a separate thread") \
446         DRI_CONF_DESC(fr,"Enable offloading GL driver work to a separate thread") \
447         DRI_CONF_DESC(sv,"Enable offloading GL driver work to a separate thread") \
448 DRI_CONF_OPT_END
449 
450 #define DRI_CONF_MESA_NO_ERROR(def) \
451 DRI_CONF_OPT_BEGIN_B(mesa_no_error, def) \
452         DRI_CONF_DESC(en,"Disable GL driver error checking") \
453         DRI_CONF_DESC(de,"Disable GL driver error checking") \
454         DRI_CONF_DESC(es,"Disable GL driver error checking") \
455         DRI_CONF_DESC(nl,"Disable GL driver error checking") \
456         DRI_CONF_DESC(fr,"Disable GL driver error checking") \
457         DRI_CONF_DESC(sv,"Disable GL driver error checking") \
458 DRI_CONF_OPT_END
459 
460 #define DRI_CONF_DISABLE_EXT_BUFFER_AGE(def) \
461 DRI_CONF_OPT_BEGIN_B(glx_disable_ext_buffer_age, def) \
462    DRI_CONF_DESC(en, "Disable the GLX_EXT_buffer_age extension") \
463    DRI_CONF_DESC(de, "Disable the GLX_EXT_buffer_age extension") \
464    DRI_CONF_DESC(es, "Disable the GLX_EXT_buffer_age extension") \
465    DRI_CONF_DESC(nl, "Disable the GLX_EXT_buffer_age extension") \
466    DRI_CONF_DESC(fr, "Disable the GLX_EXT_buffer_age extension") \
467    DRI_CONF_DESC(sv, "Disable the GLX_EXT_buffer_age extension") \
468 DRI_CONF_OPT_END
469 
470 #define DRI_CONF_DISABLE_OML_SYNC_CONTROL(def) \
471 DRI_CONF_OPT_BEGIN_B(glx_disable_oml_sync_control, def) \
472    DRI_CONF_DESC(en, "Disable the GLX_OML_sync_control extension") \
473    DRI_CONF_DESC(de, "Disable the GLX_OML_sync_control extension") \
474    DRI_CONF_DESC(es, "Disable the GLX_OML_sync_control extension") \
475    DRI_CONF_DESC(nl, "Disable the GLX_OML_sync_control extension") \
476    DRI_CONF_DESC(fr, "Disable the GLX_OML_sync_control extension") \
477    DRI_CONF_DESC(sv, "Disable the GLX_OML_sync_control extension") \
478 DRI_CONF_OPT_END
479 
480 #define DRI_CONF_DISABLE_SGI_VIDEO_SYNC(def) \
481 DRI_CONF_OPT_BEGIN_B(glx_disable_sgi_video_sync, def) \
482    DRI_CONF_DESC(en, "Disable the GLX_SGI_video_sync extension") \
483    DRI_CONF_DESC(de, "Disable the GLX_SGI_video_sync extension") \
484    DRI_CONF_DESC(es, "Disable the GLX_SGI_video_sync extension") \
485    DRI_CONF_DESC(nl, "Disable the GLX_SGI_video_sync extension") \
486    DRI_CONF_DESC(fr, "Disable the GLX_SGI_video_sync extension") \
487    DRI_CONF_DESC(sv, "Disable the GLX_SGI_video_sync extension") \
488 DRI_CONF_OPT_END
489 
490 
491 
492 /**
493  * \brief Miscellaneous configuration options
494  */
495 #define DRI_CONF_SECTION_MISCELLANEOUS \
496 DRI_CONF_SECTION_BEGIN \
497         DRI_CONF_DESC(en,"Miscellaneous") \
498         DRI_CONF_DESC(de,"Miscellaneous") \
499         DRI_CONF_DESC(es,"Misceláneos") \
500         DRI_CONF_DESC(nl,"Miscellaneous") \
501         DRI_CONF_DESC(fr,"Miscellaneous") \
502         DRI_CONF_DESC(sv,"Miscellaneous")
503 
504 #define DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER(def) \
505 DRI_CONF_OPT_BEGIN_B(always_have_depth_buffer, def) \
506         DRI_CONF_DESC(en,"Create all visuals with a depth buffer") \
507         DRI_CONF_DESC(de,"Create all visuals with a depth buffer") \
508         DRI_CONF_DESC(es,"Crear todos los visuales con búfer de profundidad") \
509         DRI_CONF_DESC(nl,"Create all visuals with a depth buffer") \
510         DRI_CONF_DESC(fr,"Create all visuals with a depth buffer") \
511         DRI_CONF_DESC(sv,"Create all visuals with a depth buffer") \
512 DRI_CONF_OPT_END
513 
514 #define DRI_CONF_GLSL_ZERO_INIT(def) \
515 DRI_CONF_OPT_BEGIN_B(glsl_zero_init, def) \
516         DRI_CONF_DESC(en,"Force uninitialized variables to default to zero") \
517         DRI_CONF_DESC(de,"Force uninitialized variables to default to zero") \
518         DRI_CONF_DESC(es,"Force uninitialized variables to default to zero") \
519         DRI_CONF_DESC(nl,"Force uninitialized variables to default to zero") \
520         DRI_CONF_DESC(fr,"Force uninitialized variables to default to zero") \
521         DRI_CONF_DESC(sv,"Force uninitialized variables to default to zero") \
522 DRI_CONF_OPT_END
523 
524 #define DRI_CONF_VS_POSITION_ALWAYS_INVARIANT(def) \
525 DRI_CONF_OPT_BEGIN_B(vs_position_always_invariant, def) \
526         DRI_CONF_DESC(en,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
527         DRI_CONF_DESC(de,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
528         DRI_CONF_DESC(es,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
529         DRI_CONF_DESC(nl,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
530         DRI_CONF_DESC(fr,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
531         DRI_CONF_DESC(sv,"Force the vertex shader's gl_Position output to be considered 'invariant'") \
532 DRI_CONF_OPT_END
533 
534 #define DRI_CONF_ALLOW_RGB10_CONFIGS(def) \
535 DRI_CONF_OPT_BEGIN_B(allow_rgb10_configs, def) \
536 DRI_CONF_DESC(en,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
537 DRI_CONF_DESC(de,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
538 DRI_CONF_DESC(es,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
539 DRI_CONF_DESC(nl,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
540 DRI_CONF_DESC(fr,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
541 DRI_CONF_DESC(sv,"Allow exposure of visuals and fbconfigs with rgb10a2 formats") \
542 DRI_CONF_OPT_END
543 
544 #define DRI_CONF_ALLOW_RGB565_CONFIGS(def) \
545 DRI_CONF_OPT_BEGIN_B(allow_rgb565_configs, def) \
546 DRI_CONF_DESC(en,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
547 DRI_CONF_DESC(de,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
548 DRI_CONF_DESC(es,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
549 DRI_CONF_DESC(nl,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
550 DRI_CONF_DESC(fr,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
551 DRI_CONF_DESC(sv,"Allow exposure of visuals and fbconfigs with rgb565 formats") \
552 DRI_CONF_OPT_END
553 
554 #define DRI_CONF_ALLOW_FP16_CONFIGS(def) \
555 DRI_CONF_OPT_BEGIN_B(allow_fp16_configs, def) \
556 DRI_CONF_DESC(en,"Allow exposure of visuals and fbconfigs with fp16 formats") \
557 DRI_CONF_DESC(de,"Allow exposure of visuals and fbconfigs with fp16 formats") \
558 DRI_CONF_DESC(es,"Allow exposure of visuals and fbconfigs with fp16 formats") \
559 DRI_CONF_DESC(nl,"Allow exposure of visuals and fbconfigs with fp16 formats") \
560 DRI_CONF_DESC(fr,"Allow exposure of visuals and fbconfigs with fp16 formats") \
561 DRI_CONF_DESC(sv,"Allow exposure of visuals and fbconfigs with fp16 formats") \
562 DRI_CONF_OPT_END
563 
564 /**
565  * \brief Initialization configuration options
566  */
567 #define DRI_CONF_SECTION_INITIALIZATION \
568 DRI_CONF_SECTION_BEGIN \
569         DRI_CONF_DESC(en,"Initialization") \
570         DRI_CONF_DESC(de,"Initialization") \
571         DRI_CONF_DESC(es,"Inicialización") \
572         DRI_CONF_DESC(nl,"Initialization") \
573         DRI_CONF_DESC(fr,"Initialization") \
574         DRI_CONF_DESC(sv,"Initialization")
575 
576 #define DRI_CONF_DEVICE_ID_PATH_TAG(def) \
577 DRI_CONF_OPT_BEGIN(device_id, string, def) \
578         DRI_CONF_DESC(en,"Define the graphic device to use if possible") \
579         DRI_CONF_DESC(de,"Define the graphic device to use if possible") \
580         DRI_CONF_DESC(es,"Define el dispositivo de gráficos que usar si es posible") \
581         DRI_CONF_DESC(nl,"Define the graphic device to use if possible") \
582         DRI_CONF_DESC(fr,"Define the graphic device to use if possible") \
583         DRI_CONF_DESC(sv,"Define the graphic device to use if possible") \
584 DRI_CONF_OPT_END
585 
586 #define DRI_CONF_DRI_DRIVER(def) \
587 DRI_CONF_OPT_BEGIN(dri_driver, string, def) \
588         DRI_CONF_DESC(en,"Override the DRI driver to load") \
589         DRI_CONF_DESC(de,"Override the DRI driver to load") \
590         DRI_CONF_DESC(es,"Override the DRI driver to load") \
591         DRI_CONF_DESC(nl,"Override the DRI driver to load") \
592         DRI_CONF_DESC(fr,"Override the DRI driver to load") \
593         DRI_CONF_DESC(sv,"Override the DRI driver to load") \
594 DRI_CONF_OPT_END
595 
596 /**
597  * \brief Gallium-Nine specific configuration options
598  */
599 
600 #define DRI_CONF_SECTION_NINE \
601 DRI_CONF_SECTION_BEGIN \
602         DRI_CONF_DESC(en,"Gallium Nine") \
603         DRI_CONF_DESC(de,"Gallium Nine") \
604         DRI_CONF_DESC(es,"Gallium Nine") \
605         DRI_CONF_DESC(nl,"Gallium Nine") \
606         DRI_CONF_DESC(fr,"Gallium Nine") \
607         DRI_CONF_DESC(sv,"Gallium Nine")
608 
609 #define DRI_CONF_NINE_THROTTLE(def) \
610 DRI_CONF_OPT_BEGIN(throttle_value, int, def) \
611         DRI_CONF_DESC(en,"Define the throttling value. -1 for no throttling, -2 for default (usually 2), 0 for glfinish behaviour") \
612         DRI_CONF_DESC(de,"Define the throttling value. -1 for no throttling, -2 for default (usually 2), 0 for glfinish behaviour") \
613         DRI_CONF_DESC(es,"Define el valor de regulación. -1 para no regular, -2 para el por defecto (generalmente 2), 0 para el comportamiento de glfinish") \
614         DRI_CONF_DESC(nl,"Define the throttling value. -1 for no throttling, -2 for default (usually 2), 0 for glfinish behaviour") \
615         DRI_CONF_DESC(fr,"Define the throttling value. -1 for no throttling, -2 for default (usually 2), 0 for glfinish behaviour") \
616         DRI_CONF_DESC(sv,"Define the throttling value. -1 for no throttling, -2 for default (usually 2), 0 for glfinish behaviour") \
617 DRI_CONF_OPT_END
618 
619 #define DRI_CONF_NINE_THREADSUBMIT(def) \
620 DRI_CONF_OPT_BEGIN_B(thread_submit, def) \
621         DRI_CONF_DESC(en,"Use an additional thread to submit buffers.") \
622         DRI_CONF_DESC(de,"Use an additional thread to submit buffers.") \
623         DRI_CONF_DESC(es,"Usar un hilo adicional para entregar los búfer.") \
624         DRI_CONF_DESC(nl,"Use an additional thread to submit buffers.") \
625         DRI_CONF_DESC(fr,"Use an additional thread to submit buffers.") \
626         DRI_CONF_DESC(sv,"Use an additional thread to submit buffers.") \
627 DRI_CONF_OPT_END
628 
629 #define DRI_CONF_NINE_OVERRIDEVENDOR(def) \
630 DRI_CONF_OPT_BEGIN(override_vendorid, int, def) \
631         DRI_CONF_DESC(en,"Define the vendor_id to report. This allows faking another hardware vendor.") \
632         DRI_CONF_DESC(de,"Define the vendor_id to report. This allows faking another hardware vendor.") \
633         DRI_CONF_DESC(es,"Define the vendor_id to report. This allows faking another hardware vendor.") \
634         DRI_CONF_DESC(nl,"Define the vendor_id to report. This allows faking another hardware vendor.") \
635         DRI_CONF_DESC(fr,"Define the vendor_id to report. This allows faking another hardware vendor.") \
636         DRI_CONF_DESC(sv,"Define the vendor_id to report. This allows faking another hardware vendor.") \
637 DRI_CONF_OPT_END
638 
639 #define DRI_CONF_NINE_ALLOWDISCARDDELAYEDRELEASE(def) \
640 DRI_CONF_OPT_BEGIN_B(discard_delayed_release, def) \
641         DRI_CONF_DESC(en,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
642         DRI_CONF_DESC(de,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
643         DRI_CONF_DESC(es,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
644         DRI_CONF_DESC(nl,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
645         DRI_CONF_DESC(fr,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
646         DRI_CONF_DESC(sv,"Whether to allow the display server to release buffers with a delay when using d3d's presentation mode DISCARD. Default to true. Set to false if suffering from lag (thread_submit=true can also help in this situation).") \
647 DRI_CONF_OPT_END
648 
649 #define DRI_CONF_NINE_TEARFREEDISCARD(def) \
650 DRI_CONF_OPT_BEGIN_B(tearfree_discard, def) \
651         DRI_CONF_DESC(en,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
652         DRI_CONF_DESC(de,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
653         DRI_CONF_DESC(es,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
654         DRI_CONF_DESC(nl,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
655         DRI_CONF_DESC(fr,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
656         DRI_CONF_DESC(sv,"Whether to make d3d's presentation mode DISCARD (games usually use that mode) Tear Free. If rendering above screen refresh, some frames will get skipped. false by default.") \
657 DRI_CONF_OPT_END
658 
659 #define DRI_CONF_NINE_CSMT(def) \
660 DRI_CONF_OPT_BEGIN(csmt_force, int, def) \
661         DRI_CONF_DESC(en,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
662         DRI_CONF_DESC(de,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
663         DRI_CONF_DESC(es,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
664         DRI_CONF_DESC(nl,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
665         DRI_CONF_DESC(fr,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
666         DRI_CONF_DESC(sv,"If set to 1, force gallium nine CSMT. If set to 0, disable it. By default (-1) CSMT is enabled on known thread-safe drivers.") \
667 DRI_CONF_OPT_END
668 
669 #define DRI_CONF_NINE_DYNAMICTEXTUREWORKAROUND(def) \
670 DRI_CONF_OPT_BEGIN_B(dynamic_texture_workaround, def) \
671         DRI_CONF_DESC(en,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
672         DRI_CONF_DESC(de,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
673         DRI_CONF_DESC(es,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
674         DRI_CONF_DESC(nl,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
675         DRI_CONF_DESC(fr,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
676         DRI_CONF_DESC(sv,"If set to true, use a ram intermediate buffer for dynamic textures. Increases ram usage, which can cause out of memory issues, but can fix glitches for some games.") \
677 DRI_CONF_OPT_END
678 
679 #define DRI_CONF_NINE_SHADERINLINECONSTANTS(def) \
680 DRI_CONF_OPT_BEGIN_B(shader_inline_constants, def) \
681         DRI_CONF_DESC(en,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
682         DRI_CONF_DESC(de,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
683         DRI_CONF_DESC(es,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
684         DRI_CONF_DESC(nl,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
685         DRI_CONF_DESC(fr,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
686         DRI_CONF_DESC(sv,"If set to true, recompile shaders with integer or boolean constants when the values are known. Can cause stutter, but can increase slightly performance.") \
687 DRI_CONF_OPT_END
688 
689 /**
690  * \brief radeonsi specific configuration options
691  */
692 
693 #define DRI_CONF_RADEONSI_ENABLE_SISCHED(def) \
694 DRI_CONF_OPT_BEGIN_B(radeonsi_enable_sisched, def) \
695         DRI_CONF_DESC(en,"Use the LLVM sisched option for shader compiles") \
696         DRI_CONF_DESC(de,"Use the LLVM sisched option for shader compiles") \
697         DRI_CONF_DESC(es,"Use the LLVM sisched option for shader compiles") \
698         DRI_CONF_DESC(nl,"Use the LLVM sisched option for shader compiles") \
699         DRI_CONF_DESC(fr,"Use the LLVM sisched option for shader compiles") \
700         DRI_CONF_DESC(sv,"Use the LLVM sisched option for shader compiles") \
701 DRI_CONF_OPT_END
702 
703 #define DRI_CONF_RADEONSI_ASSUME_NO_Z_FIGHTS(def) \
704 DRI_CONF_OPT_BEGIN_B(radeonsi_assume_no_z_fights, def) \
705         DRI_CONF_DESC(en,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
706         DRI_CONF_DESC(de,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
707         DRI_CONF_DESC(es,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
708         DRI_CONF_DESC(nl,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
709         DRI_CONF_DESC(fr,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
710         DRI_CONF_DESC(sv,"Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)") \
711 DRI_CONF_OPT_END
712 
713 #define DRI_CONF_RADEONSI_COMMUTATIVE_BLEND_ADD(def) \
714 DRI_CONF_OPT_BEGIN_B(radeonsi_commutative_blend_add, def) \
715         DRI_CONF_DESC(en,"Commutative additive blending optimizations (may cause rendering errors)") \
716         DRI_CONF_DESC(de,"Commutative additive blending optimizations (may cause rendering errors)") \
717         DRI_CONF_DESC(es,"Commutative additive blending optimizations (may cause rendering errors)") \
718         DRI_CONF_DESC(nl,"Commutative additive blending optimizations (may cause rendering errors)") \
719         DRI_CONF_DESC(fr,"Commutative additive blending optimizations (may cause rendering errors)") \
720         DRI_CONF_DESC(sv,"Commutative additive blending optimizations (may cause rendering errors)") \
721 DRI_CONF_OPT_END
722 
723 #define DRI_CONF_RADEONSI_ZERO_ALL_VRAM_ALLOCS(def) \
724 DRI_CONF_OPT_BEGIN_B(radeonsi_zerovram, def) \
725         DRI_CONF_DESC(en,"Zero all vram allocations") \
726 DRI_CONF_OPT_END
727 
728 #define DRI_CONF_V3D_NONMSAA_TEXTURE_SIZE_LIMIT(def) \
729 DRI_CONF_OPT_BEGIN_B(v3d_nonmsaa_texture_size_limit, def) \
730         DRI_CONF_DESC(en,"Report the non-MSAA-only texture size limit") \
731 DRI_CONF_OPT_END
732 
733 /**
734  * \brief virgl specific configuration options
735  */
736 
737 #define DRI_CONF_GLES_EMULATE_BGRA(def) \
738 DRI_CONF_OPT_BEGIN_B(gles_emulate_bgra, def) \
739         DRI_CONF_DESC(en,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
740         DRI_CONF_DESC(de,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
741         DRI_CONF_DESC(es,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
742         DRI_CONF_DESC(nl,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
743         DRI_CONF_DESC(fr,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
744         DRI_CONF_DESC(sv,"On GLES emulate BGRA formats by using a swizzled RGBA format") \
745 DRI_CONF_OPT_END
746 
747 #define DRI_CONF_GLES_APPLY_BGRA_DEST_SWIZZLE(def) \
748 DRI_CONF_OPT_BEGIN_B(gles_apply_bgra_dest_swizzle, def) \
749         DRI_CONF_DESC(en,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
750         DRI_CONF_DESC(de,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
751         DRI_CONF_DESC(es,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
752         DRI_CONF_DESC(nl,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
753         DRI_CONF_DESC(fr,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
754         DRI_CONF_DESC(sv,"When the BGRA formats are emulated by using swizzled RGBA formats on GLES apply the swizzle when writing") \
755 DRI_CONF_OPT_END
756 
757 #define DRI_CONF_GLES_SAMPLES_PASSED_VALUE(def, minimum, maximum) \
758 DRI_CONF_OPT_BEGIN_V(gles_samples_passed_value, def, minimum, maximum) \
759         DRI_CONF_DESC(en,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
760         DRI_CONF_DESC(de,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
761         DRI_CONF_DESC(es,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
762         DRI_CONF_DESC(nl,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
763         DRI_CONF_DESC(fr,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
764         DRI_CONF_DESC(sv,"GL_SAMPLES_PASSED value when emulated by GL_ANY_SAMPLES_PASSED") \
765 DRI_CONF_OPT_END
766