summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2019-08-13 11:11:28 -0400
committerTakashi Iwai <tiwai@suse.de>2019-08-14 12:25:16 -0400
commitf2dbe87c5ac1f88e6007ba1f1374f4bd8a197fb6 (patch)
tree21f7b5ee3baf0c609fd64b6a94974ce376681cee
parentd7da429339f503854b777ed941456841a72b48b6 (diff)
ALSA: hda - Drop unsol event handler for Intel HDMI codecs
We don't need to deal with the unsol events for Intel chips that are tied with the graphics via audio component notifier. Although the presence of the audio component is checked at the beginning of hdmi_unsol_event(), better to short cut by dropping unsol_event ops. BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=204565 Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/pci/hda/patch_hdmi.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 2096993eaf28..933c7bf47ef6 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -2760,6 +2760,8 @@ static void i915_pin_cvt_fixup(struct hda_codec *codec,
2760/* precondition and allocation for Intel codecs */ 2760/* precondition and allocation for Intel codecs */
2761static int alloc_intel_hdmi(struct hda_codec *codec) 2761static int alloc_intel_hdmi(struct hda_codec *codec)
2762{ 2762{
2763 int err;
2764
2763 /* requires i915 binding */ 2765 /* requires i915 binding */
2764 if (!codec->bus->core.audio_component) { 2766 if (!codec->bus->core.audio_component) {
2765 codec_info(codec, "No i915 binding for Intel HDMI/DP codec\n"); 2767 codec_info(codec, "No i915 binding for Intel HDMI/DP codec\n");
@@ -2768,7 +2770,12 @@ static int alloc_intel_hdmi(struct hda_codec *codec)
2768 return -ENODEV; 2770 return -ENODEV;
2769 } 2771 }
2770 2772
2771 return alloc_generic_hdmi(codec); 2773 err = alloc_generic_hdmi(codec);
2774 if (err < 0)
2775 return err;
2776 /* no need to handle unsol events */
2777 codec->patch_ops.unsol_event = NULL;
2778 return 0;
2772} 2779}
2773 2780
2774/* parse and post-process for Intel codecs */ 2781/* parse and post-process for Intel codecs */