All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] drm/i915/audio: Track temporary rpm wakerefs
@ 2019-01-14 17:37 Chris Wilson
  2019-01-14 17:37 ` [PATCH 2/3] snd/hda: Track the display_power_status using a cookie Chris Wilson
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-14 17:37 UTC (permalink / raw)
  To: intel-gfx; +Cc: alsa-devel, Chris Wilson

Track the temporary rpm wakerefs used within audio so that they may be
marked as complete and the tracking cancelled upon release.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/intel_audio.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_audio.c b/drivers/gpu/drm/i915/intel_audio.c
index de26cd0a5497..92e27359c2e3 100644
--- a/drivers/gpu/drm/i915/intel_audio.c
+++ b/drivers/gpu/drm/i915/intel_audio.c
@@ -756,12 +756,13 @@ static void i915_audio_component_codec_wake_override(struct device *kdev,
 						     bool enable)
 {
 	struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
+	intel_wakeref_t wakeref;
 	u32 tmp;
 
 	if (!IS_GEN(dev_priv, 9))
 		return;
 
-	i915_audio_component_get_power(kdev);
+	wakeref = intel_display_power_get(dev_priv, POWER_DOMAIN_AUDIO);
 
 	/*
 	 * Enable/disable generating the codec wake signal, overriding the
@@ -779,7 +780,7 @@ static void i915_audio_component_codec_wake_override(struct device *kdev,
 		usleep_range(1000, 1500);
 	}
 
-	i915_audio_component_put_power(kdev);
+	intel_display_power_put(dev_priv, POWER_DOMAIN_AUDIO, wakeref);
 }
 
 /* Get CDCLK in kHz  */
@@ -850,12 +851,13 @@ static int i915_audio_component_sync_audio_rate(struct device *kdev, int port,
 	struct i915_audio_component *acomp = dev_priv->audio_component;
 	struct intel_encoder *encoder;
 	struct intel_crtc *crtc;
+	intel_wakeref_t wakeref;
 	int err = 0;
 
 	if (!HAS_DDI(dev_priv))
 		return 0;
 
-	i915_audio_component_get_power(kdev);
+	wakeref = intel_display_power_get(dev_priv, POWER_DOMAIN_AUDIO);
 	mutex_lock(&dev_priv->av_mutex);
 
 	/* 1. get the pipe */
@@ -875,7 +877,7 @@ static int i915_audio_component_sync_audio_rate(struct device *kdev, int port,
 
  unlock:
 	mutex_unlock(&dev_priv->av_mutex);
-	i915_audio_component_put_power(kdev);
+	intel_display_power_put(dev_priv, POWER_DOMAIN_AUDIO, wakeref);
 	return err;
 }
 
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2019-01-15  0:29 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-14 17:37 [PATCH 1/3] drm/i915/audio: Track temporary rpm wakerefs Chris Wilson
2019-01-14 17:37 ` [PATCH 2/3] snd/hda: Track the display_power_status using a cookie Chris Wilson
2019-01-14 17:54   ` Takashi Iwai
2019-01-14 21:11     ` Chris Wilson
2019-01-14 17:37 ` [PATCH 3/3] snd/hda: Protect concurrent display_power_status with a mutex Chris Wilson
2019-01-14 17:46   ` Takashi Iwai
2019-01-14 17:51     ` Chris Wilson
2019-01-14 18:00       ` Takashi Iwai
2019-01-14 20:57         ` Chris Wilson
2019-01-14 21:18           ` Takashi Iwai
2019-01-14 18:07 ` [PATCH 1/3] drm/i915/audio: Track temporary rpm wakerefs John Harrison
2019-01-14 18:21 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/3] " Patchwork
2019-01-14 19:14 ` ✓ Fi.CI.BAT: success " Patchwork
2019-01-15  0:29 ` ✓ Fi.CI.IGT: " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.