diff options
author | Mario Kleiner <[email protected]> | 2017-12-15 23:04:54 +0100 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2018-01-03 22:57:56 +0100 |
commit | 67674ad0dc68eb128e5f176f772d902931deb1de (patch) | |
tree | 0d2913402e29928b5a39d9e6bd36cef103124d6d | |
parent | 9e63cbacb6bc10b4426fc2af4989fbdc86ec4167 (diff) |
dri/common: Add option to allow exposure of 10 bpc color configs. (v2)
Some clients may not like RGB10X2 and RGB10A2 fbconfigs and
visuals. Add a new driconf option 'allow_rgb10_configs' to
allow per application enable/disable.
The option defaults to enabled.
v2: Rename expose_rgb10_configs to allow_rgb10_configs,
as suggested by Emil. Add comment to option parsing,
to make sure it stays before the ->InitScreen().
Signed-off-by: Mario Kleiner <[email protected]>
Reviewed-by: Tapani Pälli <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Signed-off-by: Marek Olšák <[email protected]>
-rw-r--r-- | src/mesa/drivers/dri/common/dri_util.c | 12 | ||||
-rw-r--r-- | src/util/xmlpool/t_options.h | 5 |
2 files changed, 13 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/common/dri_util.c b/src/mesa/drivers/dri/common/dri_util.c index d504751c392..d4fba0b2747 100644 --- a/src/mesa/drivers/dri/common/dri_util.c +++ b/src/mesa/drivers/dri/common/dri_util.c @@ -55,6 +55,10 @@ const char __dri2ConfigOptions[] = 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; /*****************************************************************/ @@ -144,6 +148,10 @@ driCreateNewScreen2(int scrn, int fd, psp->fd = fd; psp->myNum = scrn; + /* Option parsing before ->InitScreen(), as some options apply there. */ + driParseOptionInfo(&psp->optionInfo, __dri2ConfigOptions); + driParseConfigFiles(&psp->optionCache, &psp->optionInfo, psp->myNum, "dri2"); + *driver_configs = psp->driver->InitScreen(psp); if (*driver_configs == NULL) { free(psp); @@ -179,10 +187,6 @@ driCreateNewScreen2(int scrn, int fd, if (psp->max_gl_es2_version >= 30) psp->api_mask |= (1 << __DRI_API_GLES3); - driParseOptionInfo(&psp->optionInfo, __dri2ConfigOptions); - driParseConfigFiles(&psp->optionCache, &psp->optionInfo, psp->myNum, "dri2"); - - return psp; } diff --git a/src/util/xmlpool/t_options.h b/src/util/xmlpool/t_options.h index bd553085c86..5f377c9dcd5 100644 --- a/src/util/xmlpool/t_options.h +++ b/src/util/xmlpool/t_options.h @@ -379,6 +379,11 @@ DRI_CONF_OPT_BEGIN_B(glsl_zero_init, def) \ DRI_CONF_DESC(en,gettext("Force uninitialized variables to default to zero")) \ DRI_CONF_OPT_END +#define DRI_CONF_ALLOW_RGB10_CONFIGS(def) \ +DRI_CONF_OPT_BEGIN_B(allow_rgb10_configs, def) \ +DRI_CONF_DESC(en,gettext("Allow exposure of visuals and fbconfigs with rgb10a2 formats")) \ +DRI_CONF_OPT_END + /** * \brief Initialization configuration options */ |