summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/display/skl_watermark.c
diff options
context:
space:
mode:
authorJouni Högander <jouni.hogander@intel.com>2023-03-29 18:07:00 +0300
committerJouni Högander <jouni.hogander@intel.com>2023-03-31 08:43:09 +0300
commitcdb015a61190060094152ff8ff6c6f34b616c13c (patch)
tree9d5b007bf585956c858ddaa2655468c8795861f6 /drivers/gpu/drm/i915/display/skl_watermark.c
parent44222656ecff73974c637b6b9c9bb5415978ed08 (diff)
drm/i915/psr: Implement Wa_14015648006
PSR WM optimization should be disabled based on any wm level being disabled. Also same WA should be applied for ICL as well. Bspec: 71580 v5: - Set in pre plane hook and clear in post plane hook v4: - Handle mode change in psr enable/disable - Handle wm_level_disable changes separately in pre plane hook v3: - Split patch v2: - set/clear chicken bit in post_plane_update - apply for ICL as well Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230329150703.432072-4-jouni.hogander@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/skl_watermark.c')
-rw-r--r--drivers/gpu/drm/i915/display/skl_watermark.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index ff70225c02635..7e2e76afbf2a9 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -2276,9 +2276,12 @@ static int skl_wm_check_vblank(struct intel_crtc_state *crtc_state)
return level;
/*
- * FIXME PSR needs to toggle LATENCY_REPORTING_REMOVED_PIPE_*
+ * PSR needs to toggle LATENCY_REPORTING_REMOVED_PIPE_*
* based on whether we're limited by the vblank duration.
- *
+ */
+ crtc_state->wm_level_disabled = level < i915->display.wm.num_levels - 1;
+
+ /*
* FIXME also related to skl+ w/a 1136 (also unimplemented as of
* now) perhaps?
*/