Commit a0b024ed authored by Imre Deak's avatar Imre Deak

drm/i915: Rename power_domains.wakeref to init_wakeref

Rename power_domains.wakeref to power_domains.init_wakeref to make the
use of this reference clearer. The next patch adds tracking for another
power reference user of the power_domains functionality.

While at it add a missing zero wakeref assert when setting the wakeref.

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20201130212200.2811939-8-imre.deak@intel.com
parent 71906550
...@@ -5658,7 +5658,8 @@ void intel_power_domains_init_hw(struct drm_i915_private *i915, bool resume) ...@@ -5658,7 +5658,8 @@ void intel_power_domains_init_hw(struct drm_i915_private *i915, bool resume)
* resources powered until display HW readout is complete. We drop * resources powered until display HW readout is complete. We drop
* this reference in intel_power_domains_enable(). * this reference in intel_power_domains_enable().
*/ */
power_domains->wakeref = drm_WARN_ON(&i915->drm, power_domains->init_wakeref);
power_domains->init_wakeref =
intel_display_power_get(i915, POWER_DOMAIN_INIT); intel_display_power_get(i915, POWER_DOMAIN_INIT);
/* Disable power support if the user asked so. */ /* Disable power support if the user asked so. */
...@@ -5683,7 +5684,7 @@ void intel_power_domains_init_hw(struct drm_i915_private *i915, bool resume) ...@@ -5683,7 +5684,7 @@ void intel_power_domains_init_hw(struct drm_i915_private *i915, bool resume)
void intel_power_domains_driver_remove(struct drm_i915_private *i915) void intel_power_domains_driver_remove(struct drm_i915_private *i915)
{ {
intel_wakeref_t wakeref __maybe_unused = intel_wakeref_t wakeref __maybe_unused =
fetch_and_zero(&i915->power_domains.wakeref); fetch_and_zero(&i915->power_domains.init_wakeref);
/* Remove the refcount we took to keep power well support disabled. */ /* Remove the refcount we took to keep power well support disabled. */
if (!i915->params.disable_power_well) if (!i915->params.disable_power_well)
...@@ -5712,7 +5713,7 @@ void intel_power_domains_driver_remove(struct drm_i915_private *i915) ...@@ -5712,7 +5713,7 @@ void intel_power_domains_driver_remove(struct drm_i915_private *i915)
void intel_power_domains_enable(struct drm_i915_private *i915) void intel_power_domains_enable(struct drm_i915_private *i915)
{ {
intel_wakeref_t wakeref __maybe_unused = intel_wakeref_t wakeref __maybe_unused =
fetch_and_zero(&i915->power_domains.wakeref); fetch_and_zero(&i915->power_domains.init_wakeref);
intel_display_power_put(i915, POWER_DOMAIN_INIT, wakeref); intel_display_power_put(i915, POWER_DOMAIN_INIT, wakeref);
intel_power_domains_verify_state(i915); intel_power_domains_verify_state(i915);
...@@ -5729,8 +5730,8 @@ void intel_power_domains_disable(struct drm_i915_private *i915) ...@@ -5729,8 +5730,8 @@ void intel_power_domains_disable(struct drm_i915_private *i915)
{ {
struct i915_power_domains *power_domains = &i915->power_domains; struct i915_power_domains *power_domains = &i915->power_domains;
drm_WARN_ON(&i915->drm, power_domains->wakeref); drm_WARN_ON(&i915->drm, power_domains->init_wakeref);
power_domains->wakeref = power_domains->init_wakeref =
intel_display_power_get(i915, POWER_DOMAIN_INIT); intel_display_power_get(i915, POWER_DOMAIN_INIT);
intel_power_domains_verify_state(i915); intel_power_domains_verify_state(i915);
...@@ -5752,7 +5753,7 @@ void intel_power_domains_suspend(struct drm_i915_private *i915, ...@@ -5752,7 +5753,7 @@ void intel_power_domains_suspend(struct drm_i915_private *i915,
{ {
struct i915_power_domains *power_domains = &i915->power_domains; struct i915_power_domains *power_domains = &i915->power_domains;
intel_wakeref_t wakeref __maybe_unused = intel_wakeref_t wakeref __maybe_unused =
fetch_and_zero(&power_domains->wakeref); fetch_and_zero(&power_domains->init_wakeref);
intel_display_power_put(i915, POWER_DOMAIN_INIT, wakeref); intel_display_power_put(i915, POWER_DOMAIN_INIT, wakeref);
...@@ -5811,8 +5812,8 @@ void intel_power_domains_resume(struct drm_i915_private *i915) ...@@ -5811,8 +5812,8 @@ void intel_power_domains_resume(struct drm_i915_private *i915)
intel_power_domains_init_hw(i915, true); intel_power_domains_init_hw(i915, true);
power_domains->display_core_suspended = false; power_domains->display_core_suspended = false;
} else { } else {
drm_WARN_ON(&i915->drm, power_domains->wakeref); drm_WARN_ON(&i915->drm, power_domains->init_wakeref);
power_domains->wakeref = power_domains->init_wakeref =
intel_display_power_get(i915, POWER_DOMAIN_INIT); intel_display_power_get(i915, POWER_DOMAIN_INIT);
} }
......
...@@ -212,7 +212,7 @@ struct i915_power_domains { ...@@ -212,7 +212,7 @@ struct i915_power_domains {
bool display_core_suspended; bool display_core_suspended;
int power_well_count; int power_well_count;
intel_wakeref_t wakeref; intel_wakeref_t init_wakeref;
struct mutex lock; struct mutex lock;
int domain_use_count[POWER_DOMAIN_NUM]; int domain_use_count[POWER_DOMAIN_NUM];
......
...@@ -1243,7 +1243,7 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused) ...@@ -1243,7 +1243,7 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused)
seq_puts(m, "Runtime power management not supported\n"); seq_puts(m, "Runtime power management not supported\n");
seq_printf(m, "Runtime power status: %s\n", seq_printf(m, "Runtime power status: %s\n",
enableddisabled(!dev_priv->power_domains.wakeref)); enableddisabled(!dev_priv->power_domains.init_wakeref));
seq_printf(m, "GPU idle: %s\n", yesno(!dev_priv->gt.awake)); seq_printf(m, "GPU idle: %s\n", yesno(!dev_priv->gt.awake));
seq_printf(m, "IRQs disabled: %s\n", seq_printf(m, "IRQs disabled: %s\n",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment