diff options
author | Takashi Iwai <tiwai@suse.de> | 2011-09-20 11:14:04 +0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-09-20 11:14:04 +0400 |
commit | 290b421f699463478d215c17cd6be52d78e16976 (patch) | |
tree | 27a2a4555feed1adc9b0ada4e746b13298f3ce67 /sound/pci/hda/hda_codec.c | |
parent | 356aab7d419822f413af5fe1bc47af40957a23fb (diff) | |
parent | 46724c2e023cb7ba5cd5000dee6481f0a15ebed9 (diff) | |
download | linux-290b421f699463478d215c17cd6be52d78e16976.tar.xz |
Merge branch 'fix/hda' into topic/hda
Diffstat (limited to 'sound/pci/hda/hda_codec.c')
-rw-r--r-- | sound/pci/hda/hda_codec.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index 5a8ecdebf37d..6b611d50d03f 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -586,9 +586,13 @@ int snd_hda_get_conn_index(struct hda_codec *codec, hda_nid_t mux, return -1; } recursive++; - for (i = 0; i < nums; i++) + for (i = 0; i < nums; i++) { + unsigned int type = get_wcaps_type(get_wcaps(codec, conn[i])); + if (type == AC_WID_PIN || type == AC_WID_AUD_OUT) + continue; if (snd_hda_get_conn_index(codec, conn[i], nid, recursive) >= 0) return i; + } return -1; } EXPORT_SYMBOL_HDA(snd_hda_get_conn_index); |