drm/i915: Re-register PMIC bus access notifier on runtime resume
intel_uncore_suspend() unregisters the uncore code's PMIC bus access
notifier and gets called on both normal and runtime suspend.
intel_uncore_resume_early() re-registers the notifier, but only on
normal resume. Add a new intel_uncore_runtime_resume() function which
only re-registers the notifier and call that on runtime resume.
Cc: stable@vger.kernel.org
Reported-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171114135518.15981-2-hdegoede@redhat.com
(cherry picked from commit bedf4d79c3
)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
parent
f4359cedfb
commit
294cf1af8c
|
@ -2618,6 +2618,8 @@ static int intel_runtime_resume(struct device *kdev)
|
||||||
ret = vlv_resume_prepare(dev_priv, true);
|
ret = vlv_resume_prepare(dev_priv, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
intel_uncore_runtime_resume(dev_priv);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* No point of rolling back things in case of an error, as the best
|
* No point of rolling back things in case of an error, as the best
|
||||||
* we can do is to hope that things will still work (and disable RPM).
|
* we can do is to hope that things will still work (and disable RPM).
|
||||||
|
|
|
@ -434,6 +434,12 @@ void intel_uncore_resume_early(struct drm_i915_private *dev_priv)
|
||||||
i915_check_and_clear_faults(dev_priv);
|
i915_check_and_clear_faults(dev_priv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void intel_uncore_runtime_resume(struct drm_i915_private *dev_priv)
|
||||||
|
{
|
||||||
|
iosf_mbi_register_pmic_bus_access_notifier(
|
||||||
|
&dev_priv->uncore.pmic_bus_access_nb);
|
||||||
|
}
|
||||||
|
|
||||||
void intel_uncore_sanitize(struct drm_i915_private *dev_priv)
|
void intel_uncore_sanitize(struct drm_i915_private *dev_priv)
|
||||||
{
|
{
|
||||||
i915_modparams.enable_rc6 =
|
i915_modparams.enable_rc6 =
|
||||||
|
|
|
@ -134,6 +134,7 @@ bool intel_uncore_arm_unclaimed_mmio_detection(struct drm_i915_private *dev_priv
|
||||||
void intel_uncore_fini(struct drm_i915_private *dev_priv);
|
void intel_uncore_fini(struct drm_i915_private *dev_priv);
|
||||||
void intel_uncore_suspend(struct drm_i915_private *dev_priv);
|
void intel_uncore_suspend(struct drm_i915_private *dev_priv);
|
||||||
void intel_uncore_resume_early(struct drm_i915_private *dev_priv);
|
void intel_uncore_resume_early(struct drm_i915_private *dev_priv);
|
||||||
|
void intel_uncore_runtime_resume(struct drm_i915_private *dev_priv);
|
||||||
|
|
||||||
u64 intel_uncore_edram_size(struct drm_i915_private *dev_priv);
|
u64 intel_uncore_edram_size(struct drm_i915_private *dev_priv);
|
||||||
void assert_forcewakes_inactive(struct drm_i915_private *dev_priv);
|
void assert_forcewakes_inactive(struct drm_i915_private *dev_priv);
|
||||||
|
|
Loading…
Reference in New Issue