summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_drv.h
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2015-12-03 14:31:06 +0100
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2015-12-22 13:44:44 +0100
commit1a617b77658e0ab1cb58a9412c5a02f862bd4fcd (patch)
treeb53883f2cfd47faa07d30d812edaf16625316ca1 /drivers/gpu/drm/i915/intel_drv.h
parent565602d7501a3e83580289d7d6da9b15838cfbe3 (diff)
downloadop-kernel-dev-1a617b77658e0ab1cb58a9412c5a02f862bd4fcd.zip
op-kernel-dev-1a617b77658e0ab1cb58a9412c5a02f862bd4fcd.tar.gz
drm/i915: Keep track of the cdclk as if all crtc's were active.
On skylake when calculating plane visibility with the crtc in dpms off mode the real cdclk may be different from what it would be if the crtc was active. This may result in a WARN_ON(cdclk < crtc_clock) from skl_max_scale. The fix is to keep a atomic_cdclk that would be true if all crtc's were active. This is required to get the same calculations done correctly regardless of dpms mode. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1447945645-32005-12-git-send-email-maarten.lankhorst@linux.intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_drv.h')
-rw-r--r--drivers/gpu/drm/i915/intel_drv.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 9b051e9..0438b57 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -247,6 +247,12 @@ struct intel_atomic_state {
unsigned int cdclk;
+ /*
+ * Calculated device cdclk, can be different from cdclk
+ * only when all crtc's are DPMS off.
+ */
+ unsigned int dev_cdclk;
+
bool dpll_set, modeset;
unsigned int active_crtcs;
OpenPOWER on IntegriCloud