• Wang YanQing's avatar
    ALSA: hda: Fix regression of hdmi eld control created based on invalid pcm · 1f7f51a6
    Wang YanQing authored
    Commit fb087eaa ("ALSA: hda - hdmi eld control created based on pcm")
    forget to filter out invalid pcm numbers, if there is only one invalid pcm
    number, then this issue causes we create eld control for invalid pcm silently,
    but when there are more than one invalid pcm numbers, then this issue bring
    probe error looks like below dmesg:
    "
    kernel: [    1.647283] snd_hda_intel 0000:00:03.0: bound 0000:00:02.0 (ops 0xc2967540)
    kernel: [    1.651192] snd_hda_intel 0000:00:03.0: Too many HDMI devices
    kernel: [    1.651195] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
    kernel: [    1.651197] snd_hda_intel 0000:00:03.0: Too many HDMI devices
    kernel: [    1.651199] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
    kernel: [    1.651201] snd_hda_intel 0000:00:03.0: Too many HDMI devices
    kernel: [    1.651203] snd_hda_intel 0000:00:03.0: Consider building the kernel with CONFIG_SND_DYNAMIC_MINORS=y
    kernel: [    1.651676] snd_hda_intel 0000:00:03.0: control 3:0:0:ELD:0 is already present
    kernel: [    1.651787] snd_hda_codec_hdmi: probe of hdaudioC0D0 failed with error -16
    "
    
    This patch add invalid pcm number filter before calling hdmi_create_eld_ctl.
    
    Fixes: fb087eaa ("ALSA: hda - hdmi eld control created based on pcm")
    Signed-off-by: default avatarWang YanQing <udknight@gmail.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    1f7f51a6
hda_codec.c 106 KB