Mesa (master): iris: Support the disable_throttling=true driconf option.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sat Sep 7 01:35:42 UTC 2019


Module: Mesa
Branch: master
Commit: dfb86405cfedea5f6500b45c3430b4339c8f8ff1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=dfb86405cfedea5f6500b45c3430b4339c8f8ff1

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Sep  5 01:52:17 2019 -0700

iris: Support the disable_throttling=true driconf option.

---

 src/gallium/drivers/iris/driinfo_iris.h | 1 +
 src/gallium/drivers/iris/iris_screen.c  | 4 ++++
 src/gallium/drivers/iris/iris_screen.h  | 1 +
 3 files changed, 6 insertions(+)

diff --git a/src/gallium/drivers/iris/driinfo_iris.h b/src/gallium/drivers/iris/driinfo_iris.h
index 37190ad168c..8525001a84f 100644
--- a/src/gallium/drivers/iris/driinfo_iris.h
+++ b/src/gallium/drivers/iris/driinfo_iris.h
@@ -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
diff --git a/src/gallium/drivers/iris/iris_screen.c b/src/gallium/drivers/iris/iris_screen.c
index 5fbc214da65..6833bc96c71 100644
--- a/src/gallium/drivers/iris/iris_screen.c
+++ b/src/gallium/drivers/iris/iris_screen.c
@@ -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);
 
diff --git a/src/gallium/drivers/iris/iris_screen.h b/src/gallium/drivers/iris/iris_screen.h
index e8eeac07f09..817ef372c94 100644
--- a/src/gallium/drivers/iris/iris_screen.h
+++ b/src/gallium/drivers/iris/iris_screen.h
@@ -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;




More information about the mesa-commit mailing list