All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
To: intel-gfx@lists.freedesktop.org
Subject: [Intel-gfx] [PATCH v17 1/7] drm/i915: Start passing latency as parameter
Date: Thu, 20 Feb 2020 14:07:35 +0200	[thread overview]
Message-ID: <20200220120741.6917-2-stanislav.lisovskiy@intel.com> (raw)
In-Reply-To: <20200220120741.6917-1-stanislav.lisovskiy@intel.com>

We need to start passing memory latency as a
parameter when calculating plane wm levels,
as latency can get changed in different
circumstances(for example with or without SAGV).
So we need to be more flexible on that matter.

Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index ffac0b862ca5..d6933e382657 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -4002,6 +4002,7 @@ static int skl_compute_wm_params(const struct intel_crtc_state *crtc_state,
 				 int color_plane);
 static void skl_compute_plane_wm(const struct intel_crtc_state *crtc_state,
 				 int level,
+				 u32 latency,
 				 const struct skl_wm_params *wp,
 				 const struct skl_wm_level *result_prev,
 				 struct skl_wm_level *result /* out */);
@@ -4024,7 +4025,9 @@ skl_cursor_allocation(const struct intel_crtc_state *crtc_state,
 	drm_WARN_ON(&dev_priv->drm, ret);
 
 	for (level = 0; level <= max_level; level++) {
-		skl_compute_plane_wm(crtc_state, level, &wp, &wm, &wm);
+		u32 latency = dev_priv->wm.skl_latency[level];
+
+		skl_compute_plane_wm(crtc_state, level, latency, &wp, &wm, &wm);
 		if (wm.min_ddb_alloc == U16_MAX)
 			break;
 
@@ -4978,12 +4981,12 @@ static bool skl_wm_has_lines(struct drm_i915_private *dev_priv, int level)
 
 static void skl_compute_plane_wm(const struct intel_crtc_state *crtc_state,
 				 int level,
+				 u32 latency,
 				 const struct skl_wm_params *wp,
 				 const struct skl_wm_level *result_prev,
 				 struct skl_wm_level *result /* out */)
 {
 	struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev);
-	u32 latency = dev_priv->wm.skl_latency[level];
 	uint_fixed_16_16_t method1, method2;
 	uint_fixed_16_16_t selected_result;
 	u32 res_blocks, res_lines, min_ddb_alloc = 0;
@@ -5112,9 +5115,10 @@ skl_compute_wm_levels(const struct intel_crtc_state *crtc_state,
 
 	for (level = 0; level <= max_level; level++) {
 		struct skl_wm_level *result = &levels[level];
+		u32 latency = dev_priv->wm.skl_latency[level];
 
-		skl_compute_plane_wm(crtc_state, level, wm_params,
-				     result_prev, result);
+		skl_compute_plane_wm(crtc_state, level, latency,
+				     wm_params, result_prev, result);
 
 		result_prev = result;
 	}
-- 
2.24.1.485.gad05a3d8e5

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2020-02-20 12:10 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-20 12:07 [Intel-gfx] [PATCH v17 0/7] Refactor Gen11+ SAGV support Stanislav Lisovskiy
2020-02-20 12:07 ` Stanislav Lisovskiy [this message]
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 2/7] drm/i915: Introduce skl_plane_wm_level accessor Stanislav Lisovskiy
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 3/7] drm/i915: Init obj state in intel_atomic_get_old/new_global_obj_state Stanislav Lisovskiy
2020-02-20 12:40   ` Jani Nikula
2020-02-20 13:14     ` Lisovskiy, Stanislav
2020-02-20 13:29       ` Lisovskiy, Stanislav
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 4/7] drm/i915: Refactor intel_can_enable_sagv Stanislav Lisovskiy
2020-02-21 14:09   ` Stanislav Lisovskiy
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 5/7] drm/i915: Added required new PCode commands Stanislav Lisovskiy
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 6/7] drm/i915: Restrict qgv points which don't have enough bandwidth Stanislav Lisovskiy
2020-02-20 12:07 ` [Intel-gfx] [PATCH v17 7/7] drm/i915: Enable SAGV support for Gen12 Stanislav Lisovskiy
2020-02-20 16:33 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Refactor Gen11+ SAGV support Patchwork
2020-02-20 16:38 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-02-20 16:47 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2020-02-21 21:24 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Refactor Gen11+ SAGV support (rev2) Patchwork
2020-02-21 21:28 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2020-02-21 21:42 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-02-24 13:00 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork

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=20200220120741.6917-2-stanislav.lisovskiy@intel.com \
    --to=stanislav.lisovskiy@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.