drm/i915: Add missing NULL check before calling initial_watermarks
authorImre Deak <imre.deak@intel.com>
Mon, 29 Feb 2016 20:10:33 +0000 (22:10 +0200)
committerImre Deak <imre.deak@intel.com>
Tue, 1 Mar 2016 10:40:08 +0000 (12:40 +0200)
Not all platforms set this callback, so NULL check it before calling it.

v2:
- Call intel_update_watermarks() on HSW+ where the callback is not set.
  (Matt)

CC: Matt Roper <matthew.d.roper@intel.com>
Fixes: commit ed4a6a7ca853 ("drm/i915: Add two-stage ILK-style watermark programming (v11)")
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1456776633-3401-1-git-send-email-imre.deak@intel.com
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
drivers/gpu/drm/i915/intel_display.c

index c803690..368d247 100644 (file)
@@ -4957,7 +4957,8 @@ static void ironlake_crtc_enable(struct drm_crtc *crtc)
         */
        intel_crtc_load_lut(crtc);
 
-       dev_priv->display.initial_watermarks(intel_crtc->config);
+       if (dev_priv->display.initial_watermarks != NULL)
+               dev_priv->display.initial_watermarks(intel_crtc->config);
        intel_enable_pipe(intel_crtc);
 
        if (intel_crtc->config->has_pch_encoder)
@@ -5056,7 +5057,10 @@ static void haswell_crtc_enable(struct drm_crtc *crtc)
        if (!intel_crtc->config->has_dsi_encoder)
                intel_ddi_enable_transcoder_func(crtc);
 
-       dev_priv->display.initial_watermarks(pipe_config);
+       if (dev_priv->display.initial_watermarks != NULL)
+               dev_priv->display.initial_watermarks(pipe_config);
+       else
+               intel_update_watermarks(crtc);
        intel_enable_pipe(intel_crtc);
 
        if (intel_crtc->config->has_pch_encoder)