diff options
author | David Henningsson <david.henningsson@canonical.com> | 2013-01-16 09:58:45 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-01-16 10:24:42 -0500 |
commit | 6fc4cb97cbf5bf1ccfac821072e3927d21b3e0e9 (patch) | |
tree | 0bf17ff6f5a59a40ae0d7225f8e5dbbfc08372c6 /sound/pci/hda/hda_generic.c | |
parent | 99a5592d6a897eed447df1fac6b591c06c891858 (diff) |
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>
Diffstat (limited to 'sound/pci/hda/hda_generic.c')
-rw-r--r-- | sound/pci/hda/hda_generic.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/hda/hda_generic.c b/sound/pci/hda/hda_generic.c index 171364a9dda4..73900d935681 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) | |||
1516 | bool best_wired = true, best_mio = true; | 1516 | bool best_wired = true, best_mio = true; |
1517 | bool hp_spk_swapped = false; | 1517 | bool hp_spk_swapped = false; |
1518 | 1518 | ||
1519 | fill_all_dac_nids(codec); | ||
1520 | |||
1521 | best_cfg = kmalloc(sizeof(*best_cfg), GFP_KERNEL); | 1519 | best_cfg = kmalloc(sizeof(*best_cfg), GFP_KERNEL); |
1522 | if (!best_cfg) | 1520 | if (!best_cfg) |
1523 | return -ENOMEM; | 1521 | return -ENOMEM; |
@@ -3428,6 +3426,8 @@ int snd_hda_gen_parse_auto_config(struct hda_codec *codec, | |||
3428 | cfg = &spec->autocfg; | 3426 | cfg = &spec->autocfg; |
3429 | } | 3427 | } |
3430 | 3428 | ||
3429 | fill_all_dac_nids(codec); | ||
3430 | |||
3431 | if (!cfg->line_outs) { | 3431 | if (!cfg->line_outs) { |
3432 | if (cfg->dig_outs || cfg->dig_in_pin) { | 3432 | if (cfg->dig_outs || cfg->dig_in_pin) { |
3433 | spec->multiout.max_channels = 2; | 3433 | spec->multiout.max_channels = 2; |