[Mesa-dev] [PATCH] dri_util: remove ALLOW_RGB10_CONFIGS option (v2)
Mario Kleiner
mario.kleiner.de at gmail.com
Thu Jan 11 06:14:44 UTC 2018
On 01/10/2018 07:04 AM, Tapani Pälli wrote:
> Hi Marek;
>
> This one works but only if you add
>
> DRI_CONF_ALLOW_RGB10_CONFIGS("false")
>
> to the DRI_CONF_SECTION_MISCELLANEOUS section in intel_screen. With that
> change: Reviewed-by: Tapani Pälli <tapani.palli at intel.com>
>
With this patch now committed to master, rgb10 visuals on i965 are
completely dead, as far as my testing goes. rgb10 is always off, and the
'allow_rgb10_configs' option in drirc gets ignored for enumeration of
visuals/fbconfigs, e.g., in glxinfo.
Before it worked on my machines, defaulted to on, and could be
controlled via drirc.
As far as i can see, setting up &screen->optionCache for i965 happens
too late, only at glXCreateContext() time -> brwCreateContext() ->
brw_process_driconf_options().
The old way read the options file as part of driCreateNewScreen2(),
which was called as part of __glXInitialize, e.g., from
glXChooseVisual() -- early enough to affect the enumeration/selection of
visuals.
So i don't know if the old way was the right way, but it did give the
right behavior for i965 whereas the new one doesn't.
Ideas?
-mario
>
> On 01/09/2018 04:04 PM, Marek Olšák wrote:
>> From: Marek Olšák <marek.olsak at amd.com>
>>
>> This is unused because it's for libGL/libEGL, not drivers.
>>
>> v2: i965 was wrong, because it used dri_util instead of its own config.
>> ---
>> src/mesa/drivers/dri/common/dri_util.c | 4 ----
>> src/mesa/drivers/dri/i965/intel_screen.c | 2 +-
>> 2 files changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/src/mesa/drivers/dri/common/dri_util.c
>> b/src/mesa/drivers/dri/common/dri_util.c
>> index d4fba0b..e6a7d23 100644
>> --- a/src/mesa/drivers/dri/common/dri_util.c
>> +++ b/src/mesa/drivers/dri/common/dri_util.c
>> @@ -48,24 +48,20 @@
>> #include "main/version.h"
>> #include "main/debug_output.h"
>> #include "main/errors.h"
>> #include "main/macros.h"
>> const char __dri2ConfigOptions[] =
>> DRI_CONF_BEGIN
>> DRI_CONF_SECTION_PERFORMANCE
>> DRI_CONF_VBLANK_MODE(DRI_CONF_VBLANK_DEF_INTERVAL_1)
>> DRI_CONF_SECTION_END
>> -
>> - DRI_CONF_SECTION_MISCELLANEOUS
>> - DRI_CONF_ALLOW_RGB10_CONFIGS("true")
>> - DRI_CONF_SECTION_END
>> DRI_CONF_END;
>> /*****************************************************************/
>> /** \name Screen handling functions */
>> /*****************************************************************/
>> /*@{*/
>> static void
>> setupLoaderExtensions(__DRIscreen *psp,
>> const __DRIextension **extensions)
>> diff --git a/src/mesa/drivers/dri/i965/intel_screen.c
>> b/src/mesa/drivers/dri/i965/intel_screen.c
>> index 3e016b5..89db821 100644
>> --- a/src/mesa/drivers/dri/i965/intel_screen.c
>> +++ b/src/mesa/drivers/dri/i965/intel_screen.c
>> @@ -2057,21 +2057,21 @@ intel_screen_make_configs(__DRIscreen
>> *dri_screen)
>> __DRIconfig **configs = NULL;
>> /* Expose only BGRA ordering if the loader doesn't support RGBA
>> ordering. */
>> unsigned num_formats;
>> if (intel_loader_get_cap(dri_screen, DRI_LOADER_CAP_RGBA_ORDERING))
>> num_formats = ARRAY_SIZE(formats);
>> else
>> num_formats = ARRAY_SIZE(formats) - 2; /* all - RGBA_ORDERING
>> formats */
>> /* Shall we expose 10 bpc formats? */
>> - bool allow_rgb10_configs = driQueryOptionb(&dri_screen->optionCache,
>> + bool allow_rgb10_configs = driQueryOptionb(&screen->optionCache,
>> "allow_rgb10_configs");
>> /* Generate singlesample configs without accumulation buffer. */
>> for (unsigned i = 0; i < num_formats; i++) {
>> __DRIconfig **new_configs;
>> int num_depth_stencil_bits = 2;
>> if (!allow_rgb10_configs &&
>> (formats[i] == MESA_FORMAT_B10G10R10A2_UNORM ||
>> formats[i] == MESA_FORMAT_B10G10R10X2_UNORM))
>>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list