mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 01:04:19 +08:00
ALSA: hda/realtek - Improve the signel-connection check
When the connections from the pin selector contain only two widgets, a route to DAC and the aa-mixer, it's certainly a single connection. In such a case, get_dac_if_single() should return the connected DAC, too. This will improve the detection of the individual DAC assignment for each pin. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
00bc0ce913
commit
140547ef4e
@ -2972,8 +2972,12 @@ static bool alc_auto_is_dac_reachable(struct hda_codec *codec,
|
||||
|
||||
static hda_nid_t get_dac_if_single(struct hda_codec *codec, hda_nid_t pin)
|
||||
{
|
||||
struct alc_spec *spec = codec->spec;
|
||||
hda_nid_t sel = alc_go_down_to_selector(codec, pin);
|
||||
if (snd_hda_get_conn_list(codec, sel, NULL) == 1)
|
||||
hda_nid_t srcs[5];
|
||||
int num = snd_hda_get_connections(codec, sel, srcs,
|
||||
ARRAY_SIZE(srcs));
|
||||
if (num == 1 || (num == 2 && srcs[1] == spec->mixer_nid))
|
||||
return alc_auto_look_for_dac(codec, pin);
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user