ALSA: hda/realtek - Simplify alc_auto_is_dac_reachable()
authorTakashi Iwai <tiwai@suse.de>
Wed, 5 Dec 2012 13:08:45 +0000 (14:08 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 10 Jan 2013 09:34:26 +0000 (10:34 +0100)
Use the helper function snd_hda_get_conn_index() instead of open
codes.  This also improves the detection of some routes to DAC on
ALC260 (although the difference doesn't influence on the end
results of the mapping).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index f519627..ca07740 100644 (file)
@@ -2938,19 +2938,9 @@ static hda_nid_t alc_auto_look_for_dac(struct hda_codec *codec, hda_nid_t pin)
 static bool alc_auto_is_dac_reachable(struct hda_codec *codec,
                                      hda_nid_t pin, hda_nid_t dac)
 {
-       hda_nid_t srcs[5];
-       int i, num;
-
        if (!pin || !dac)
                return false;
-       pin = alc_go_down_to_selector(codec, pin);
-       num = snd_hda_get_connections(codec, pin, srcs, ARRAY_SIZE(srcs));
-       for (i = 0; i < num; i++) {
-               hda_nid_t nid = alc_auto_mix_to_dac(codec, srcs[i]);
-               if (nid == dac)
-                       return true;
-       }
-       return false;
+       return snd_hda_get_conn_index(codec, pin, dac, true) >= 0;
 }
 
 static hda_nid_t get_dac_if_single(struct hda_codec *codec, hda_nid_t pin)