Browse Source

ALSA: hda - Make sure fill_all_dac_nids is called for digital only codecs

Otherwise no PCM will be built for codecs without analog I/O.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
David Henningsson 12 years ago
parent
commit
6fc4cb97cb
1 changed files with 2 additions and 2 deletions
  1. 2 2
      sound/pci/hda/hda_generic.c

+ 2 - 2
sound/pci/hda/hda_generic.c

@@ -1516,8 +1516,6 @@ static int parse_output_paths(struct hda_codec *codec)
 	bool best_wired = true, best_mio = true;
 	bool hp_spk_swapped = false;
 
-	fill_all_dac_nids(codec);
-
 	best_cfg = kmalloc(sizeof(*best_cfg), GFP_KERNEL);
 	if (!best_cfg)
 		return -ENOMEM;
@@ -3428,6 +3426,8 @@ int snd_hda_gen_parse_auto_config(struct hda_codec *codec,
 		cfg = &spec->autocfg;
 	}
 
+	fill_all_dac_nids(codec);
+
 	if (!cfg->line_outs) {
 		if (cfg->dig_outs || cfg->dig_in_pin) {
 			spec->multiout.max_channels = 2;