From: David Henningsson Date: Wed, 16 Jan 2013 14:58:45 +0000 (+0100) Subject: ALSA: hda - Make sure fill_all_dac_nids is called for digital only codecs X-Git-Tag: v3.9-rc1~129^2~70^2~38^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6fc4cb97cbf5bf1ccfac821072e3927d21b3e0e9;p=thirdparty%2Flinux.git 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 Signed-off-by: Takashi Iwai --- diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c index 171364a9dda41..73900d935681c 100644 --- a/sound/pci/hda/hda_generic.c +++ b/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;