summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_pm.c
diff options
context:
space:
mode:
authorMika Kuoppala2015-07-16 18:36:51 +0200
committerDaniel Vetter2015-07-17 09:06:40 +0200
commit661abfc028886eb1c6b5b9dbc433ef8cfb11217d (patch)
treecef34dd59093046aebc551b5a29ab5f21ac8dbd4 /drivers/gpu/drm/i915/intel_pm.c
parentdrm/i915: Invert fastboot check (diff)
downloadkernel-qcow2-linux-661abfc028886eb1c6b5b9dbc433ef8cfb11217d.tar.gz
kernel-qcow2-linux-661abfc028886eb1c6b5b9dbc433ef8cfb11217d.tar.xz
kernel-qcow2-linux-661abfc028886eb1c6b5b9dbc433ef8cfb11217d.zip
drm/i915: Fix divide by zero on watermark update
Fix divide by zero if we end up updating the watermarks with zero dotclock. This is a stop gap measure to allow module load in cases where our state keeping fails. v2: WARN_ON added (Paulo) Cc: Paulo Zanoni <przanoni@gmail.com> Cc: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_pm.c')
-rw-r--r--drivers/gpu/drm/i915/intel_pm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 5eeddc97ca2a..0d3e01434860 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3316,8 +3316,10 @@ skl_compute_linetime_wm(struct drm_crtc *crtc, struct skl_pipe_wm_parameters *p)
if (!to_intel_crtc(crtc)->active)
return 0;
- return DIV_ROUND_UP(8 * p->pipe_htotal * 1000, p->pixel_rate);
+ if (WARN_ON(p->pixel_rate == 0))
+ return 0;
+ return DIV_ROUND_UP(8 * p->pipe_htotal * 1000, p->pixel_rate);
}
static void skl_compute_transition_wm(struct drm_crtc *crtc,