diff mbox

[v2,5/6] ALSA: hda - allow codecs to access the i915 pin/ELD callback

Message ID 1441281306-1481-6-git-send-email-david.henningsson@canonical.com
State New
Headers show

Commit Message

David Henningsson Sept. 3, 2015, 11:55 a.m. UTC
This lets the interested codec be notified when an i915 pin/ELD
event happens.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
---
 sound/pci/hda/hda_i915.c  | 10 ++++++++++
 sound/pci/hda/hda_intel.h |  5 +++++
 2 files changed, 15 insertions(+)
diff mbox

Patch

diff --git a/sound/pci/hda/hda_i915.c b/sound/pci/hda/hda_i915.c
index 27a21b2..e999279 100644
--- a/sound/pci/hda/hda_i915.c
+++ b/sound/pci/hda/hda_i915.c
@@ -110,6 +110,16 @@  void haswell_set_bclk(struct hda_intel *hda)
 	azx_writew(&hda->chip, EM5, bclk_n);
 }
 
+int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *aops)
+{
+	if (WARN_ON(!hdac_acomp))
+		return -ENODEV;
+
+	hdac_acomp->audio_ops = aops;
+	return 0;
+}
+EXPORT_SYMBOL_GPL(snd_hdac_i915_register_notifier);
+
 static int hda_component_master_bind(struct device *dev)
 {
 	struct snd_card *card = dev_get_drvdata(dev);
diff --git a/sound/pci/hda/hda_intel.h b/sound/pci/hda/hda_intel.h
index 51cd664..51b940c 100644
--- a/sound/pci/hda/hda_intel.h
+++ b/sound/pci/hda/hda_intel.h
@@ -54,6 +54,7 @@  void haswell_set_bclk(struct hda_intel *hda);
 int hda_i915_init(struct hda_intel *hda);
 int hda_i915_init_bpo(struct hda_intel *hda);
 int hda_i915_exit(struct hda_intel *hda);
+int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *);
 #else
 static inline int hda_set_codec_wakeup(struct hda_intel *hda, bool enable)
 {
@@ -80,6 +81,10 @@  static inline int hda_i915_exit_bpo(void)
 {
        return 0;
 }
+static inline int snd_hdac_i915_register_notifier(const struct i915_audio_component_audio_ops *)
+{
+	return -ENODEV;
+}
 #endif
 
 #endif