From: Dave Airlie <airl...@redhat.com> Intel driver has this for Unigine heaven, so it looks fine to add it for gallium drivers as well.
Signed-off-by: Dave Airlie <airl...@redhat.com> --- src/gallium/include/state_tracker/st_api.h | 1 + src/gallium/state_trackers/dri/common/dri_context.c | 2 ++ src/gallium/state_trackers/dri/common/dri_screen.c | 1 + src/mesa/state_tracker/st_extensions.c | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gallium/include/state_tracker/st_api.h b/src/gallium/include/state_tracker/st_api.h index 3a11cd4..2214e34 100644 --- a/src/gallium/include/state_tracker/st_api.h +++ b/src/gallium/include/state_tracker/st_api.h @@ -239,6 +239,7 @@ struct st_visual struct st_config_options { boolean force_glsl_extensions_warn; + boolean blend_func_extended_disable; }; /** diff --git a/src/gallium/state_trackers/dri/common/dri_context.c b/src/gallium/state_trackers/dri/common/dri_context.c index b91303d..5c3a65a 100644 --- a/src/gallium/state_trackers/dri/common/dri_context.c +++ b/src/gallium/state_trackers/dri/common/dri_context.c @@ -54,6 +54,8 @@ static void dri_fill_st_options(struct st_config_options *options, { options->force_glsl_extensions_warn = driQueryOptionb(optionCache, "force_glsl_extensions_warn"); + options->blend_func_extended_disable = + driQueryOptionb(optionCache, "disable_blend_func_extended"); } GLboolean diff --git a/src/gallium/state_trackers/dri/common/dri_screen.c b/src/gallium/state_trackers/dri/common/dri_screen.c index 70059b9..c1296cd 100644 --- a/src/gallium/state_trackers/dri/common/dri_screen.c +++ b/src/gallium/state_trackers/dri/common/dri_screen.c @@ -64,6 +64,7 @@ PUBLIC const char __driConfigOptions[] = DRI_CONF_SECTION_END DRI_CONF_SECTION_DEBUG + DRI_CONF_DISABLE_BLEND_FUNC_EXTENDED(false) DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN(false) DRI_CONF_SECTION_END diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 8877005..b213f06 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -622,7 +622,7 @@ void st_init_extensions(struct st_context *st) } } - if (ctx->Const.MaxDualSourceDrawBuffers > 0) + if (ctx->Const.MaxDualSourceDrawBuffers > 0 && !st->options.blend_func_extended_disable) ctx->Extensions.ARB_blend_func_extended = GL_TRUE; if (screen->get_param(screen, PIPE_CAP_TIMER_QUERY) && -- 1.7.11.7 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev