drm/i915: assert force wake is disabled when we runtime suspend
Just to be sure... Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Reviewed-by: Imre Deak <imre.deak@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
b2ec142cb0
commit
e998c40fed
|
@ -849,6 +849,7 @@ static int i915_runtime_suspend(struct device *device)
|
|||
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||
|
||||
WARN_ON(!HAS_RUNTIME_PM(dev));
|
||||
assert_force_wake_inactive(dev_priv);
|
||||
|
||||
DRM_DEBUG_KMS("Suspending device\n");
|
||||
|
||||
|
|
|
@ -2561,6 +2561,7 @@ extern void intel_display_print_error_state(struct drm_i915_error_state_buf *e,
|
|||
*/
|
||||
void gen6_gt_force_wake_get(struct drm_i915_private *dev_priv, int fw_engine);
|
||||
void gen6_gt_force_wake_put(struct drm_i915_private *dev_priv, int fw_engine);
|
||||
void assert_force_wake_inactive(struct drm_i915_private *dev_priv);
|
||||
|
||||
int sandybridge_pcode_read(struct drm_i915_private *dev_priv, u8 mbox, u32 *val);
|
||||
int sandybridge_pcode_write(struct drm_i915_private *dev_priv, u8 mbox, u32 val);
|
||||
|
|
|
@ -428,6 +428,14 @@ out:
|
|||
intel_runtime_pm_put(dev_priv);
|
||||
}
|
||||
|
||||
void assert_force_wake_inactive(struct drm_i915_private *dev_priv)
|
||||
{
|
||||
if (!dev_priv->uncore.funcs.force_wake_get)
|
||||
return;
|
||||
|
||||
WARN_ON(dev_priv->uncore.forcewake_count > 0);
|
||||
}
|
||||
|
||||
/* We give fast paths for the really cool registers */
|
||||
#define NEEDS_FORCE_WAKE(dev_priv, reg) \
|
||||
((reg) < 0x40000 && (reg) != FORCEWAKE)
|
||||
|
|
Loading…
Reference in New Issue