iris: Support the disable_throttling=true driconf option.

This commit is contained in:
Kenneth Graunke
2019-09-05 01:52:17 -07:00
parent c832820ce9
commit dfb86405cf
3 changed files with 6 additions and 0 deletions

View File

@@ -2,6 +2,7 @@
DRI_CONF_SECTION_DEBUG
DRI_CONF_DUAL_COLOR_BLEND_BY_LOCATION("false")
DRI_CONF_DISABLE_THROTTLING("false")
DRI_CONF_SECTION_END
DRI_CONF_SECTION_PERFORMANCE

View File

@@ -308,6 +308,8 @@ iris_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
* illegal snoop <-> snoop transfers.
*/
return devinfo->has_llc;
case PIPE_CAP_MAX_FRAMES_IN_FLIGHT:
return screen->driconf.disable_throttling ? 0 : 1;
case PIPE_CAP_CONTEXT_PRIORITY_MASK:
return PIPE_CONTEXT_PRIORITY_LOW |
@@ -653,6 +655,8 @@ iris_screen_create(int fd, const struct pipe_screen_config *config)
screen->driconf.dual_color_blend_by_location =
driQueryOptionb(config->options, "dual_color_blend_by_location");
screen->driconf.disable_throttling =
driQueryOptionb(config->options, "disable_throttling");
screen->precompile = env_var_as_boolean("shader_precompile", true);

View File

@@ -66,6 +66,7 @@ struct iris_screen {
struct {
/** Dual color blend by location instead of index (for broken apps) */
bool dual_color_blend_by_location;
bool disable_throttling;
} driconf;
unsigned subslice_total;