Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1495935

[PATCH 2/6] drm/i915/skl: Remove linetime from skl_wm_values

From Lyude <cpaul@redhat.com>
Newsgroups linux.kernel
Subject [PATCH 2/6] drm/i915/skl: Remove linetime from skl_wm_values
Date 2016-10-05 17:40 +0200
Message-ID <soWsx-2L8-13@gated-at.bofh.it> (permalink)
References <soWsx-2L8-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Next part of cleaning up the watermark code for skl. This is easy, since
it seems that we never actually needed to keep track of the linetime in
the skl_wm_values struct anyway.

Signed-off-by: Lyude <cpaul@redhat.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
---
 drivers/gpu/drm/i915/i915_drv.h      | 1 -
 drivers/gpu/drm/i915/intel_display.c | 6 ++++--
 drivers/gpu/drm/i915/intel_pm.c      | 7 +------
 3 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 85e541c..d26e5999 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1643,7 +1643,6 @@ struct skl_ddb_allocation {
 struct skl_wm_values {
 	unsigned dirty_pipes;
 	struct skl_ddb_allocation ddb;
-	uint32_t wm_linetime[I915_MAX_PIPES];
 	uint32_t plane[I915_MAX_PIPES][I915_MAX_PLANES][8];
 	uint32_t plane_trans[I915_MAX_PIPES][I915_MAX_PLANES];
 };
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 17733af..a71d05a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -14832,6 +14832,8 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc,
 	struct drm_device *dev = crtc->dev;
 	struct drm_i915_private *dev_priv = to_i915(dev);
 	struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
+	struct intel_crtc_state *intel_cstate =
+		to_intel_crtc_state(crtc->state);
 	struct intel_crtc_state *old_intel_state =
 		to_intel_crtc_state(old_crtc_state);
 	bool modeset = needs_modeset(crtc->state);
@@ -14848,13 +14850,13 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc,
 		intel_color_load_luts(crtc->state);
 	}
 
-	if (to_intel_crtc_state(crtc->state)->update_pipe)
+	if (intel_cstate->update_pipe)
 		intel_update_pipe_config(intel_crtc, old_intel_state);
 	else if (INTEL_GEN(dev_priv) >= 9) {
 		skl_detach_scalers(intel_crtc);
 
 		I915_WRITE(PIPE_WM_LINETIME(pipe),
-			   dev_priv->wm.skl_hw.wm_linetime[pipe]);
+			   intel_cstate->wm.skl.optimal.linetime);
 	}
 }
 
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 0383516..af96888 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3839,8 +3839,6 @@ static void skl_compute_wm_results(struct drm_device *dev,
 		temp |= PLANE_WM_EN;
 
 	r->plane_trans[pipe][PLANE_CURSOR] = temp;
-
-	r->wm_linetime[pipe] = p_wm->linetime;
 }
 
 static void skl_ddb_entry_write(struct drm_i915_private *dev_priv,
@@ -4069,7 +4067,6 @@ skl_copy_wm_for_pipe(struct skl_wm_values *dst,
 		     struct skl_wm_values *src,
 		     enum pipe pipe)
 {
-	dst->wm_linetime[pipe] = src->wm_linetime[pipe];
 	memcpy(dst->plane[pipe], src->plane[pipe],
 	       sizeof(dst->plane[pipe]));
 	memcpy(dst->plane_trans[pipe], src->plane_trans[pipe],
@@ -4320,8 +4317,6 @@ static void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc)
 
 	max_level = ilk_wm_max_level(dev);
 
-	hw->wm_linetime[pipe] = I915_READ(PIPE_WM_LINETIME(pipe));
-
 	for (level = 0; level <= max_level; level++) {
 		for (i = 0; i < intel_num_planes(intel_crtc); i++)
 			hw->plane[pipe][i][level] =
@@ -4338,7 +4333,7 @@ static void skl_pipe_wm_get_hw_state(struct drm_crtc *crtc)
 
 	hw->dirty_pipes |= drm_crtc_mask(crtc);
 
-	active->linetime = hw->wm_linetime[pipe];
+	active->linetime = I915_READ(PIPE_WM_LINETIME(pipe));
 
 	for (level = 0; level <= max_level; level++) {
 		for (i = 0; i < intel_num_planes(intel_crtc); i++) {
-- 
2.7.4

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/6] Start of skl watermark cleanup Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
  [PATCH 2/6] drm/i915/skl: Remove linetime from skl_wm_values Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
    Re: [Intel-gfx] [PATCH 2/6] drm/i915/skl: Remove linetime from  skl_wm_values Paulo Zanoni <paulo.r.zanoni@intel.com> - 2016-10-05 22:30 +0200
  [PATCH 1/6] drm/i915/skl: Move per-pipe ddb allocations into crtc states Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
    Re: [Intel-gfx] [PATCH 1/6] drm/i915/skl: Move per-pipe ddb  allocations into crtc states Paulo Zanoni <paulo.r.zanoni@intel.com> - 2016-10-05 22:30 +0200
  [PATCH 5/6] drm/i915/gen9: Get rid of redundant watermark values Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
    Re: [Intel-gfx] [PATCH 5/6] drm/i915/gen9: Get rid of redundant  watermark values Paulo Zanoni <paulo.r.zanoni@intel.com> - 2016-10-05 23:50 +0200
      Re: [Intel-gfx] [PATCH 5/6] drm/i915/gen9: Get rid of redundant  watermark values Chris Wilson <chris@chris-wilson.co.uk> - 2016-10-06 00:00 +0200
  [PATCH 6/6] drm/i915/gen9: Add ddb changes to atomic debug output Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
  [PATCH 3/6] drm/i915: Add enable_sagv option Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
    Re: [Intel-gfx] [PATCH 3/6] drm/i915: Add enable_sagv option Paulo Zanoni <paulo.r.zanoni@intel.com> - 2016-10-05 21:40 +0200
  [PATCH 4/6] drm/i915/gen9: Make skl_wm_level per-plane Lyude <cpaul@redhat.com> - 2016-10-05 17:40 +0200
    Re: [Intel-gfx] [PATCH 4/6] drm/i915/gen9: Make skl_wm_level  per-plane Paulo Zanoni <paulo.r.zanoni@intel.com> - 2016-10-05 22:40 +0200
      Re: [Intel-gfx] [PATCH 4/6] drm/i915/gen9: Make skl_wm_level  per-plane Maarten Lankhorst <maarten.lankhorst@linux.intel.com> - 2016-10-06 12:40 +0200
  Re: [PATCH 0/6] Start of skl watermark cleanup Maarten Lankhorst <maarten.lankhorst@linux.intel.com> - 2016-10-06 13:30 +0200

csiph-web