diff options
author | Takashi Iwai <tiwai@suse.de> | 2017-06-28 12:45:34 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2017-06-28 12:45:34 +0200 |
commit | 17890880bbf7bac8171054c7dca7a5162b23c5c2 (patch) | |
tree | cc1103f6e79fc2f3058c97a5050b1a68f849a035 /sound/pci/hda/hda_controller.c | |
parent | ALSA: hda - Fix endless loop of codec configure (diff) | |
download | linux-17890880bbf7bac8171054c7dca7a5162b23c5c2.tar.xz linux-17890880bbf7bac8171054c7dca7a5162b23c5c2.zip |
ALSA: hda - Skip card registration when no codec is found
It's nonsense to register a card object when no codec is bound on it,
as we don't support the deferred codec binding. Instead of
registering an empty card object, just skip the registration by
returning an error from azx_codec_configure().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_controller.c')
-rw-r--r-- | sound/pci/hda/hda_controller.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_controller.c b/sound/pci/hda/hda_controller.c index 1c60beb5b70a..d1eb14842340 100644 --- a/sound/pci/hda/hda_controller.c +++ b/sound/pci/hda/hda_controller.c @@ -1345,6 +1345,9 @@ int azx_codec_configure(struct azx *chip) list_for_each_codec_safe(codec, next, &chip->bus) { snd_hda_codec_configure(codec); } + + if (!azx_bus(chip)->num_codecs) + return -ENODEV; return 0; } EXPORT_SYMBOL_GPL(azx_codec_configure); |