From: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> Previously the active watermarks is saved in intel_crtc->wm_state This commit adds a new field "vlv" into intel_crtc->wm.active and save the active watermarks in it to be consistent with what we do on other platforms. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> Signed-off-by: Chi Ding <chix.ding@xxxxxxxxx> --- drivers/gpu/drm/i915/intel_drv.h | 1 + drivers/gpu/drm/i915/intel_pm.c | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h index ac0124c..8e77adb 100644 --- a/drivers/gpu/drm/i915/intel_drv.h +++ b/drivers/gpu/drm/i915/intel_drv.h @@ -680,6 +680,7 @@ struct intel_crtc { union { struct intel_pipe_wm ilk; struct skl_pipe_wm skl; + struct vlv_wm_state vlv; } active; /* allow CxSR on this pipe */ diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index 04265ea..cc43c1e 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@ -1229,7 +1229,7 @@ static void vlv_pipe_set_fifo_size(struct intel_crtc *crtc) struct drm_device *dev = crtc->base.dev; struct drm_i915_private *dev_priv = to_i915(dev); int sprite0_start = 0, sprite1_start = 0, fifo_size = 0; - const struct vlv_wm_state *wm_state = &crtc->wm_state; + const struct vlv_wm_state *wm_state = &crtc->wm.active.vlv; WARN_ON(wm_state->fifo_size[PLANE_CURSOR] != 63); @@ -1311,7 +1311,7 @@ static void vlv_merge_wm(struct drm_device *dev, wm->cxsr = true; for_each_intel_crtc(dev, crtc) { - const struct vlv_wm_state *wm_state = &crtc->wm_state; + const struct vlv_wm_state *wm_state = &crtc->wm.active.vlv; if (!crtc->active) continue; @@ -1330,7 +1330,7 @@ static void vlv_merge_wm(struct drm_device *dev, wm->level = VLV_WM_LEVEL_PM2; for_each_intel_crtc(dev, crtc) { - struct vlv_wm_state *wm_state = &crtc->wm_state; + struct vlv_wm_state *wm_state = &crtc->wm.active.vlv; enum pipe pipe = crtc->pipe; if (!crtc->active) @@ -1357,7 +1357,7 @@ static void vlv_update_wm(struct drm_crtc *crtc) vlv_compute_wm(intel_crtc->config); mutex_lock(&dev_priv->wm.wm_mutex); - intel_crtc->wm_state = intel_crtc->config->wm.vlv.optimal; + intel_crtc->wm.active.vlv = intel_crtc->config->wm.vlv.optimal; vlv_merge_wm(dev, &wm); mutex_unlock(&dev_priv->wm.wm_mutex); @@ -4372,7 +4372,7 @@ void vlv_wm_get_hw_state(struct drm_device *dev) int i = wm_plane_id(plane); crtc = to_intel_crtc(intel_get_crtc_for_pipe(dev, plane->pipe)); - wm_state = &crtc->wm_state; + wm_state = &crtc->wm.active.vlv; switch (plane->base.type) { case DRM_PLANE_TYPE_CURSOR: @@ -4426,7 +4426,7 @@ void vlv_wm_get_hw_state(struct drm_device *dev) for_each_intel_crtc(dev, crtc) { pipe = crtc->pipe; to_intel_crtc_state(crtc->base.state)->wm.vlv.optimal - = crtc->wm_state; + = crtc->wm.active.vlv; DRM_DEBUG_KMS("Initial watermarks: pipe %c, plane=%d, cursor=%d, sprite0=%d, sprite1=%d\n", pipe_name(pipe), wm->pipe[pipe].primary, wm->pipe[pipe].cursor, -- 1.8.0.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx