drm/i915: Don't sanitize has_decoupled_mmio if platform is not broxton
authorAnder Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Thu, 24 Nov 2016 13:23:27 +0000 (15:23 +0200)
committerAnder Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Fri, 25 Nov 2016 14:43:45 +0000 (16:43 +0200)
The check in __intel_uncore_early_sanitize() to disable decoupled mmio
would disable it for every platform that is not broxton. While that's
not a problem now since only broxton supports that, simply setting
.has_decoupled_mmio in a new platform's device info wouldn't suffice. So
avoid future confusion and change the workaround to only change the
value of has_decoupled_mmio for broxton.

v2: git add compile fix. (Ander)

Cc: Praveen Paneri <praveen.paneri@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Imre Deak <imre.deak@intel.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1479993807-29353-1-git-send-email-ander.conselvan.de.oliveira@intel.com
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_uncore.c

index 0fbc31134561b3cce44363838794fc7e85a804e6..c5349aaaf8740c98522f0d7b3d4d9c6c8cd5e0b6 100644 (file)
@@ -2579,6 +2579,7 @@ intel_info(const struct drm_i915_private *dev_priv)
 #define BXT_REVID_A0           0x0
 #define BXT_REVID_A1           0x1
 #define BXT_REVID_B0           0x3
+#define BXT_REVID_B_LAST       0x8
 #define BXT_REVID_C0           0x9
 
 #define IS_BXT_REVID(dev_priv, since, until) \
index d7be0d94ba4d1786443230d19b01b6df1fcc3cde..07779d0c71e6580e7cd523b54ea21533d1609022 100644 (file)
@@ -421,8 +421,7 @@ static void __intel_uncore_early_sanitize(struct drm_i915_private *dev_priv,
                                   GT_FIFO_CTL_RC6_POLICY_STALL);
        }
 
-       /* Enable Decoupled MMIO only on BXT C stepping onwards */
-       if (!IS_BXT_REVID(dev_priv, BXT_REVID_C0, REVID_FOREVER))
+       if (IS_BXT_REVID(dev_priv, 0, BXT_REVID_B_LAST))
                info->has_decoupled_mmio = false;
 
        intel_uncore_forcewake_reset(dev_priv, restore_forcewake);