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 at redhat.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
Cc: Paulo Zanoni <paulo.r.zanoni at 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 bb2de8d..e9d035ea 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1644,7 +1644,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 68355b0..cc5d5e9 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3841,8 +3841,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,
@@ -4077,7 +4075,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],
@@ -4328,8 +4325,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] =
@@ -4346,7 +4341,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

Reply via email to