drm/i915: Error out if we are trying to use VGA with SPLL already in use
authorDamien Lespiau <damien.lespiau@intel.com>
Thu, 7 Mar 2013 15:30:25 +0000 (15:30 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Sat, 23 Mar 2013 12:26:56 +0000 (13:26 +0100)
Our static analysis tool noticed that 'reg' could be used uninitialized if
we are trying to get a PLL to drive VGA and SPLL is already in use
(plls->spll_refcoung != 0).

In the (error) case above, let's return false to the caller and emit an
error.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_ddi.c

index bfcc58ffecbb2f7df4c9779d31455685ca452631..ebe52937246406bb12dd4a3e47dcf43d74acc385 100644 (file)
@@ -898,6 +898,9 @@ bool intel_ddi_pll_mode_set(struct drm_crtc *crtc, int clock)
                        plls->spll_refcount++;
                        reg = SPLL_CTL;
                        intel_crtc->ddi_pll_sel = PORT_CLK_SEL_SPLL;
+               } else {
+                       DRM_ERROR("SPLL already in use\n");
+                       return false;
                }
 
                WARN(I915_READ(reg) & SPLL_PLL_ENABLE,