[Intel-gfx] [PATCH 01/10] drm/i915: clarify comment about mandatory RPM put/get during driver load/unload
imre.deak at intel.com
Tue Dec 15 10:10:29 PST 2015
Signed-off-by: Imre Deak <imre.deak at intel.com>
drivers/gpu/drm/i915/intel_runtime_pm.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c b/drivers/gpu/drm/i915/intel_runtime_pm.c
index 2c2151f..9945040 100644
@@ -1975,9 +1975,15 @@ int intel_power_domains_init(struct drm_i915_private *dev_priv)
void intel_power_domains_fini(struct drm_i915_private *dev_priv)
- /* The i915.ko module is still not prepared to be loaded when
+ * The i915.ko module is still not prepared to be loaded when
* the power well is not enabled, so just enable it in case
- * we're going to unload/reload. */
+ * we're going to unload/reload.
+ * The following also reacquires the RPM reference the core passed
+ * to the driver during loading, which is dropped in
+ * intel_runtime_pm_enable(). We have to hand back the control of the
+ * device to the core with this reference held.
/* Remove the refcount we took to keep power well support disabled. */
@@ -2313,6 +2319,11 @@ void intel_runtime_pm_enable(struct drm_i915_private *dev_priv)
+ * The core calls the driver load handler with an RPM reference held.
+ * We drop that here and will reacquire it during unloading in
+ * intel_power_domains_fini().
More information about the Intel-gfx