Mario, can we push these patches? Marek
On Wed, Nov 29, 2017 at 5:21 AM, Mario Kleiner <mario.kleiner...@gmail.com> wrote: > Some clients may not like rgb10 fbconfigs and visuals. > Support driconf option 'allow_rgb10_configs' on gallium > to allow per application enable/disable. > > The option defaults to enabled. > > Signed-off-by: Mario Kleiner <mario.kleiner...@gmail.com> > --- > src/gallium/auxiliary/pipe-loader/driinfo_gallium.h | 1 + > src/gallium/state_trackers/dri/dri_screen.c | 8 ++++++++ > 2 files changed, 9 insertions(+) > > diff --git a/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h > b/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h > index d2d2c9d..db0d633 100644 > --- a/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h > +++ b/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h > @@ -31,4 +31,5 @@ DRI_CONF_SECTION_END > DRI_CONF_SECTION_MISCELLANEOUS > DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER("false") > DRI_CONF_GLSL_ZERO_INIT("false") > + DRI_CONF_ALLOW_RGB10_CONFIGS("true") > DRI_CONF_SECTION_END > diff --git a/src/gallium/state_trackers/dri/dri_screen.c > b/src/gallium/state_trackers/dri/dri_screen.c > index 04afe71..d307b4f 100644 > --- a/src/gallium/state_trackers/dri/dri_screen.c > +++ b/src/gallium/state_trackers/dri/dri_screen.c > @@ -156,6 +156,7 @@ dri_fill_in_modes(struct dri_screen *screen) > struct pipe_screen *p_screen = screen->base.screen; > boolean pf_z16, pf_x8z24, pf_z24x8, pf_s8z24, pf_z24s8, pf_z32; > boolean mixed_color_depth; > + boolean allow_rgb10; > > static const GLenum back_buffer_modes[] = { > __DRI_ATTRIB_SWAP_NONE, __DRI_ATTRIB_SWAP_UNDEFINED, > @@ -172,6 +173,8 @@ dri_fill_in_modes(struct dri_screen *screen) > depth_buffer_factor = 1; > } > > + allow_rgb10 = driQueryOptionb(&screen->dev->option_cache, > "allow_rgb10_configs"); > + > msaa_samples_max = (screen->st_api->feature_mask & > ST_API_FEATURE_MS_VISUALS_MASK) > ? MSAA_VISUAL_MAX_SAMPLES : 1; > > @@ -231,6 +234,11 @@ dri_fill_in_modes(struct dri_screen *screen) > unsigned num_msaa_modes = 0; /* includes a single-sample mode */ > uint8_t msaa_modes[MSAA_VISUAL_MAX_SAMPLES]; > > + if (!allow_rgb10 && > + (mesa_formats[format] == MESA_FORMAT_B10G10R10A2_UNORM || > + mesa_formats[format] == MESA_FORMAT_B10G10R10X2_UNORM)) > + continue; > + > if (!p_screen->is_format_supported(p_screen, pipe_formats[format], > PIPE_TEXTURE_2D, 0, > PIPE_BIND_RENDER_TARGET)) > -- > 2.7.4 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev