summaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2015-11-27 14:53:35 +0100
committerTakashi Iwai <tiwai@suse.de>2015-12-03 17:36:10 +0100
commiteb399d3c99d8b411bfc46e67ea329ddc1ca64e87 (patch)
tree38f4bc3db48d6777324ff5f824776f6b1eed7c22 /sound/pci
parenta72f65954926fbcbf6abe3054f6694915c809eb3 (diff)
downloadlinux-eb399d3c99d8b411bfc46e67ea329ddc1ca64e87.tar.gz
linux-eb399d3c99d8b411bfc46e67ea329ddc1ca64e87.tar.bz2
linux-eb399d3c99d8b411bfc46e67ea329ddc1ca64e87.zip
ALSA: hda - Skip ELD notification during PM process
The ELD notification can be received asynchronously from the graphics side, and this may happen just at the moment the sound driver is processing the suspend or the resume, and it would confuse the whole procedure. Since the ELD and connection states are updated in anyway at the end of the resume, we can skip it when received during PM process. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/patch_hdmi.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 4b6fb668c91c..da264e8acce2 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -2357,6 +2357,9 @@ static void intel_pin_eld_notify(void *audio_ptr, int port)
*/
if (snd_power_get_state(codec->card) != SNDRV_CTL_POWER_D0)
return;
+ /* ditto during suspend/resume process itself */
+ if (atomic_read(&(codec)->core.in_pm))
+ return;
check_presence_and_report(codec, pin_nid);
}