summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorVille Syrjälä2016-11-28 18:37:05 +0100
committerVille Syrjälä2016-12-05 15:23:24 +0100
commit1be4d3793d5a93daddcd9be657c429b38ad750a3 (patch)
treea4b8e3ea32f31afd30cb23be878556d69f60cb0a /drivers/gpu/drm/i915/intel_pm.c
parentdrm/i915: Use the ilk_disable_lp_wm() return value (diff)
downloadkernel-qcow2-linux-1be4d3793d5a93daddcd9be657c429b38ad750a3.tar.gz
kernel-qcow2-linux-1be4d3793d5a93daddcd9be657c429b38ad750a3.tar.xz
kernel-qcow2-linux-1be4d3793d5a93daddcd9be657c429b38ad750a3.zip
drm/i915: Fix the level 0 max_wm hack on VLV/CHV
The watermark should never exceed the FIFO size, so we need to check against the current FIFO size instead of the theoretical maximum when we clamp the level 0 watermark. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1480354637-14209-4-git-send-email-ville.syrjala@linux.intel.com Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 59a88de83b9a..8ff1e23d403b 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -1132,13 +1132,13 @@ static void vlv_compute_wm(struct intel_crtc *crtc)
/* normal watermarks */
for (level = 0; level < wm_state->num_levels; level++) {
int wm = vlv_compute_wm_level(plane, crtc, state, level);
- int max_wm = plane->base.type == DRM_PLANE_TYPE_CURSOR ? 63 : 511;
+ int max_wm = plane->wm.fifo_size;
/* hack */
if (WARN_ON(level == 0 && wm > max_wm))
wm = max_wm;
- if (wm > plane->wm.fifo_size)
+ if (wm > max_wm)
break;
switch (plane->base.type) {