summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorImre Deak <imre.deak@intel.com>2015-03-17 11:40:04 +0200
committerDaniel Vetter <daniel.vetter@ffwll.ch>2015-03-20 11:48:21 +0100
commit24be4e4650de2fc323ee0737f945ad366b6c11cc (patch)
tree9ed8e204869a1ed7c2fcaac7860c074757a8cd78 /drivers/gpu/drm
parentd5dd62bd9a19bcea4bcf20f66de56591fdd0d8d2 (diff)
drm/i915: check for div-by-zero in vlv_PLL_is_optimal
Signed-off-by: Imre Deak <imre.deak@intel.com> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 9dc9a85d0008..b0aa6a4784c4 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -786,6 +786,9 @@ static bool vlv_PLL_is_optimal(struct drm_device *dev, int target_freq,
unsigned int best_error_ppm,
unsigned int *error_ppm)
{
+ if (WARN_ON_ONCE(!target_freq))
+ return false;
+
*error_ppm = div_u64(1000000ULL *
abs(target_freq - calculated_clock->dot),
target_freq);