From: deepak.s@linux.intel.com
To: intel-gfx@lists.freedesktop.org
Cc: Deepak S <deepak.s@intel.com>
Subject: [PATCH v2 3/3] drm/i915: Add boot paramter to control rps boost at boot time.
Date: Thu, 13 Mar 2014 21:30:18 +0530 [thread overview]
Message-ID: <1394726418-10831-4-git-send-email-deepak.s@linux.intel.com> (raw)
In-Reply-To: <1394726418-10831-1-git-send-email-deepak.s@linux.intel.com>
From: Deepak S <deepak.s@intel.com>
We are adding a module paramter to control rps boost. By default, we
enable the boost for better performace. Based on the need (perf/power)
we can either enable/disable.
v2: Addressed rps default comment (Jani)
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
---
drivers/gpu/drm/i915/i915_drv.h | 1 +
drivers/gpu/drm/i915/i915_gem.c | 16 +++++++++++++++-
drivers/gpu/drm/i915/i915_params.c | 5 +++++
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 607042b..7808319 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2106,6 +2106,7 @@ struct i915_params {
int panel_use_ssc;
int vbt_sdvo_panel_type;
int enable_rc6;
+ int enable_rps_boost;
int enable_fbc;
int enable_ppgtt;
int enable_psr;
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 92b0b41..23a4700 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1002,6 +1002,17 @@ static bool can_wait_boost(struct drm_i915_file_private *file_priv)
return !atomic_xchg(&file_priv->rps_wait_boost, true);
}
+static int intel_enable_rps_boost(struct drm_device *dev)
+{
+ /* No RPS Boost before Ironlake */
+ if (INTEL_INFO(dev)->gen < 6)
+ return 0;
+
+ /* Respect the kernel parameter if it is set */
+ return i915.enable_rps_boost;
+
+}
+
/**
* __wait_seqno - wait until execution of seqno has finished
* @ring: the ring expected to report seqno
@@ -1042,8 +1053,11 @@ static int __wait_seqno(struct intel_ring_buffer *ring, u32 seqno,
timeout_expire = timeout ? jiffies + timespec_to_jiffies_timeout(timeout) : 0;
- if (INTEL_INFO(dev)->gen >= 6 && can_wait_boost(file_priv)) {
+ if (INTEL_INFO(dev)->gen >= 6 && can_wait_boost(file_priv) &&
+ intel_enable_rps_boost(ring->dev)) {
+
gen6_rps_boost(dev_priv);
+
if (file_priv)
mod_delayed_work(dev_priv->wq,
&file_priv->mm.idle_work,
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
index a66ffb6..2d207e3 100644
--- a/drivers/gpu/drm/i915/i915_params.c
+++ b/drivers/gpu/drm/i915/i915_params.c
@@ -34,6 +34,7 @@ struct i915_params i915 __read_mostly = {
.panel_use_ssc = -1,
.vbt_sdvo_panel_type = -1,
.enable_rc6 = -1,
+ .enable_rps_boost = 1,
.enable_fbc = -1,
.enable_hangcheck = true,
.enable_ppgtt = -1,
@@ -78,6 +79,10 @@ MODULE_PARM_DESC(enable_rc6,
"For example, 3 would enable rc6 and deep rc6, and 7 would enable everything. "
"default: -1 (use per-chip default)");
+module_param_named(enable_rps_boost, i915.enable_rps_boost, int, 0600);
+MODULE_PARM_DESC(enable_rps_boost,
+ "Enable/Disable boost RPS frequency (default: enabled (1))");
+
module_param_named(enable_fbc, i915.enable_fbc, int, 0600);
MODULE_PARM_DESC(enable_fbc,
"Enable frame buffer compression for power savings "
--
1.8.4.2
next prev parent reply other threads:[~2014-03-13 16:01 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-03 6:05 [PATCH v2] drm/i915/vlv: WA for Turbo and RC6 to work together deepak.s
2014-03-04 14:20 ` S, Deepak
2014-03-05 12:11 ` Ville Syrjälä
2014-03-05 12:30 ` S, Deepak
2014-03-13 16:00 ` [PATCH v3 0/3] " deepak.s
2014-03-13 16:00 ` [PATCH 1/3] drm/i915: Track the enabled PM interrupts in dev_priv deepak.s
2014-03-13 18:16 ` Ville Syrjälä
2014-03-13 18:43 ` S, Deepak
2014-03-13 18:59 ` Ville Syrjälä
2014-03-15 14:53 ` [PATCH v4 0/3] WA for Turbo and RC6 to work together deepak.s
2014-03-15 14:53 ` [PATCH v2 1/3] drm/i915: Track the enabled PM interrupts in dev_priv deepak.s
2014-03-24 19:26 ` Ville Syrjälä
2014-03-24 20:22 ` Daniel Vetter
2014-03-15 14:53 ` [PATCH v4 2/3] drm/i915/vlv: WA for Turbo and RC6 to work together deepak.s
2014-03-24 19:26 ` Ville Syrjälä
2014-03-15 14:53 ` [PATCH v3 3/3] drm/i915: Add boot paramter to control rps boost at boot time deepak.s
2014-03-24 19:27 ` Ville Syrjälä
2014-03-27 6:35 ` [PATCH v5] drm/i915/vlv: WA for Turbo and RC6 to work together deepak.s
2014-03-28 12:53 ` Ville Syrjälä
2014-03-28 13:06 ` Chris Wilson
2014-03-30 6:27 ` Deepak S
2014-03-30 6:28 ` [PATCH v6] " deepak.s
2014-05-13 22:12 ` Jesse Barnes
2014-03-13 16:00 ` [PATCH v3 2/3] " deepak.s
2014-03-13 18:17 ` Ville Syrjälä
2014-03-13 18:40 ` S, Deepak
2014-03-13 18:57 ` Ville Syrjälä
2014-03-13 16:00 ` deepak.s [this message]
2014-03-13 18:16 ` [PATCH v2 3/3] drm/i915: Add boot paramter to control rps boost at boot time Ville Syrjälä
2014-03-13 18:46 ` S, Deepak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1394726418-10831-4-git-send-email-deepak.s@linux.intel.com \
--to=deepak.s@linux.intel.com \
--cc=deepak.s@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.