diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-06-25 15:01:46 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-07-10 16:03:42 -0400 |
commit | 8cc3e169a606ab9577a333a2017cb1acf75668e3 (patch) | |
tree | 5d43d426e6e7bcd939bc585ef04feb8b667acce7 | |
parent | ebcdd39eafb1d87e1aa31edfb65cd53bfc604346 (diff) |
drm/i915: Check hw state in assert_can_disable_lcpll
All the other checks also check hw state, so checking our software
refcounts for the plls looks a bit odd. Also this will simplify the
conversion over to the shared dpll framework, which itself has massive
amounts of checks to make sure that we never leave a display pll
enabled when we shouldn't.
So after that conversion we should stil have a good enough coverage of
asserts for entering pc8/runtime pm on hsw/bdw.
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index f5986b2ad252..e1b0049347a6 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -7312,7 +7312,6 @@ static bool ironlake_get_pipe_config(struct intel_crtc *crtc, | |||
7312 | static void assert_can_disable_lcpll(struct drm_i915_private *dev_priv) | 7312 | static void assert_can_disable_lcpll(struct drm_i915_private *dev_priv) |
7313 | { | 7313 | { |
7314 | struct drm_device *dev = dev_priv->dev; | 7314 | struct drm_device *dev = dev_priv->dev; |
7315 | struct intel_ddi_plls *plls = &dev_priv->ddi_plls; | ||
7316 | struct intel_crtc *crtc; | 7315 | struct intel_crtc *crtc; |
7317 | 7316 | ||
7318 | for_each_intel_crtc(dev, crtc) | 7317 | for_each_intel_crtc(dev, crtc) |
@@ -7320,9 +7319,9 @@ static void assert_can_disable_lcpll(struct drm_i915_private *dev_priv) | |||
7320 | pipe_name(crtc->pipe)); | 7319 | pipe_name(crtc->pipe)); |
7321 | 7320 | ||
7322 | WARN(I915_READ(HSW_PWR_WELL_DRIVER), "Power well on\n"); | 7321 | WARN(I915_READ(HSW_PWR_WELL_DRIVER), "Power well on\n"); |
7323 | WARN(plls->spll_refcount, "SPLL enabled\n"); | 7322 | WARN(I915_READ(SPLL_CTL) & SPLL_PLL_ENABLE, "SPLL enabled\n"); |
7324 | WARN(plls->wrpll1_refcount, "WRPLL1 enabled\n"); | 7323 | WARN(I915_READ(WRPLL_CTL1) & WRPLL_PLL_ENABLE, "WRPLL1 enabled\n"); |
7325 | WARN(plls->wrpll2_refcount, "WRPLL2 enabled\n"); | 7324 | WARN(I915_READ(WRPLL_CTL2) & WRPLL_PLL_ENABLE, "WRPLL2 enabled\n"); |
7326 | WARN(I915_READ(PCH_PP_STATUS) & PP_ON, "Panel power on\n"); | 7325 | WARN(I915_READ(PCH_PP_STATUS) & PP_ON, "Panel power on\n"); |
7327 | WARN(I915_READ(BLC_PWM_CPU_CTL2) & BLM_PWM_ENABLE, | 7326 | WARN(I915_READ(BLC_PWM_CPU_CTL2) & BLM_PWM_ENABLE, |
7328 | "CPU PWM1 enabled\n"); | 7327 | "CPU PWM1 enabled\n"); |