• Home
  • Raw
  • Download

Lines Matching refs:cfg

941 	struct auto_pin_cfg *cfg = &spec->autocfg;  in get_line_out_pfx()  local
944 if (cfg->line_outs == 1 && !spec->multi_ios && in get_line_out_pfx()
945 !cfg->hp_outs && !cfg->speaker_outs) in get_line_out_pfx()
956 if (ch >= cfg->line_outs) in get_line_out_pfx()
959 switch (cfg->line_out_type) { in get_line_out_pfx()
964 if (!ch && cfg->hp_outs && in get_line_out_pfx()
967 if (cfg->line_outs == 1) in get_line_out_pfx()
969 if (cfg->line_outs == 2) in get_line_out_pfx()
976 if (!ch && cfg->speaker_outs && in get_line_out_pfx()
987 if (cfg->line_outs == 1 && !spec->multi_ios) in get_line_out_pfx()
1096 struct auto_pin_cfg *cfg = &spec->autocfg; in get_primary_out() local
1098 if (cfg->line_outs > idx) in get_primary_out()
1100 idx -= cfg->line_outs; in get_primary_out()
1235 struct auto_pin_cfg *cfg = &spec->autocfg; in count_multiio_pins() local
1242 for (i = 0; i < cfg->num_inputs; i++) { in count_multiio_pins()
1243 if (cfg->inputs[i].type != type) in count_multiio_pins()
1246 cfg->inputs[i].pin)) in count_multiio_pins()
1266 struct auto_pin_cfg *cfg = &spec->autocfg; in fill_multi_ios() local
1282 for (i = 0; i < cfg->num_inputs; i++) { in fill_multi_ios()
1283 hda_nid_t nid = cfg->inputs[i].pin; in fill_multi_ios()
1286 if (cfg->inputs[i].type != type) in fill_multi_ios()
1314 spec->out_paths[cfg->line_outs + spec->multi_ios] = in fill_multi_ios()
1339 path = snd_hda_get_path_from_idx(codec, spec->out_paths[cfg->line_outs + i]); in fill_multi_ios()
1415 struct auto_pin_cfg *cfg = &spec->autocfg; in indep_hp_possible() local
1419 if (cfg->line_out_type == AUTO_PIN_HP_OUT) in indep_hp_possible()
1432 for (i = 0; i < cfg->line_outs; i++) { in indep_hp_possible()
1439 for (i = 0; i < cfg->speaker_outs; i++) { in indep_hp_possible()
1473 struct auto_pin_cfg *cfg = &spec->autocfg; in fill_and_eval_dacs() local
1477 spec->multiout.num_dacs = cfg->line_outs; in fill_and_eval_dacs()
1501 mapped = map_singles(codec, cfg->line_outs, in fill_and_eval_dacs()
1502 cfg->line_out_pins, in fill_and_eval_dacs()
1505 mapped |= map_singles(codec, cfg->hp_outs, in fill_and_eval_dacs()
1506 cfg->hp_pins, in fill_and_eval_dacs()
1509 mapped |= map_singles(codec, cfg->speaker_outs, in fill_and_eval_dacs()
1510 cfg->speaker_pins, in fill_and_eval_dacs()
1513 if (fill_mio_first && cfg->line_outs == 1 && in fill_and_eval_dacs()
1514 cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in fill_and_eval_dacs()
1515 err = fill_multi_ios(codec, cfg->line_out_pins[0], true); in fill_and_eval_dacs()
1522 badness += try_assign_dacs(codec, cfg->line_outs, cfg->line_out_pins, in fill_and_eval_dacs()
1527 cfg->line_outs == 1 && cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in fill_and_eval_dacs()
1529 err = fill_multi_ios(codec, cfg->line_out_pins[0], false); in fill_and_eval_dacs()
1535 if (cfg->line_out_type != AUTO_PIN_HP_OUT) { in fill_and_eval_dacs()
1536 err = try_assign_dacs(codec, cfg->hp_outs, cfg->hp_pins, in fill_and_eval_dacs()
1544 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in fill_and_eval_dacs()
1545 err = try_assign_dacs(codec, cfg->speaker_outs, in fill_and_eval_dacs()
1546 cfg->speaker_pins, in fill_and_eval_dacs()
1554 if (cfg->line_outs == 1 && cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in fill_and_eval_dacs()
1555 err = fill_multi_ios(codec, cfg->line_out_pins[0], false); in fill_and_eval_dacs()
1564 if (cfg->line_out_type != AUTO_PIN_HP_OUT) in fill_and_eval_dacs()
1567 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) in fill_and_eval_dacs()
1572 if (cfg->hp_outs && cfg->line_out_type == AUTO_PIN_SPEAKER_OUT) in fill_and_eval_dacs()
1573 if (count_multiio_pins(codec, cfg->hp_pins[0]) >= 2) in fill_and_eval_dacs()
1578 for (i = 0; i < cfg->line_outs; i++) { in fill_and_eval_dacs()
1584 sizeof(hda_nid_t) * (cfg->line_outs - i - 1)); in fill_and_eval_dacs()
1585 spec->private_dac_nids[cfg->line_outs - 1] = 0; in fill_and_eval_dacs()
1605 if (cfg->line_out_type != AUTO_PIN_HP_OUT) in fill_and_eval_dacs()
1606 refill_shared_dacs(codec, cfg->hp_outs, in fill_and_eval_dacs()
1609 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) in fill_and_eval_dacs()
1610 refill_shared_dacs(codec, cfg->speaker_outs, in fill_and_eval_dacs()
1637 struct auto_pin_cfg *cfg) in debug_show_configs() argument
1644 cfg->line_out_pins[0], cfg->line_out_pins[1], in debug_show_configs()
1645 cfg->line_out_pins[2], cfg->line_out_pins[3], in debug_show_configs()
1650 lo_type[cfg->line_out_type]); in debug_show_configs()
1651 for (i = 0; i < cfg->line_outs; i++) in debug_show_configs()
1660 spec->out_paths[cfg->line_outs + i]); in debug_show_configs()
1661 if (cfg->hp_outs) in debug_show_configs()
1663 cfg->hp_pins[0], cfg->hp_pins[1], in debug_show_configs()
1664 cfg->hp_pins[2], cfg->hp_pins[3], in debug_show_configs()
1669 for (i = 0; i < cfg->hp_outs; i++) in debug_show_configs()
1671 if (cfg->speaker_outs) in debug_show_configs()
1673 cfg->speaker_pins[0], cfg->speaker_pins[1], in debug_show_configs()
1674 cfg->speaker_pins[2], cfg->speaker_pins[3], in debug_show_configs()
1679 for (i = 0; i < cfg->speaker_outs; i++) in debug_show_configs()
1685 #define debug_show_configs(codec, cfg) /* NOP */ argument
1711 struct auto_pin_cfg *cfg = &spec->autocfg; in parse_output_paths() local
1723 *best_cfg = *cfg; in parse_output_paths()
1733 cfg->line_out_type, fill_hardwired, fill_mio_first, in parse_output_paths()
1735 debug_show_configs(codec, cfg); in parse_output_paths()
1738 *best_cfg = *cfg; in parse_output_paths()
1753 if (cfg->speaker_outs > 0 && in parse_output_paths()
1754 cfg->line_out_type == AUTO_PIN_HP_OUT) { in parse_output_paths()
1755 cfg->hp_outs = cfg->line_outs; in parse_output_paths()
1756 memcpy(cfg->hp_pins, cfg->line_out_pins, in parse_output_paths()
1757 sizeof(cfg->hp_pins)); in parse_output_paths()
1758 cfg->line_outs = cfg->speaker_outs; in parse_output_paths()
1759 memcpy(cfg->line_out_pins, cfg->speaker_pins, in parse_output_paths()
1760 sizeof(cfg->speaker_pins)); in parse_output_paths()
1761 cfg->speaker_outs = 0; in parse_output_paths()
1762 memset(cfg->speaker_pins, 0, sizeof(cfg->speaker_pins)); in parse_output_paths()
1763 cfg->line_out_type = AUTO_PIN_SPEAKER_OUT; in parse_output_paths()
1767 if (cfg->hp_outs > 0 && in parse_output_paths()
1768 cfg->line_out_type == AUTO_PIN_SPEAKER_OUT) { in parse_output_paths()
1769 cfg->speaker_outs = cfg->line_outs; in parse_output_paths()
1770 memcpy(cfg->speaker_pins, cfg->line_out_pins, in parse_output_paths()
1771 sizeof(cfg->speaker_pins)); in parse_output_paths()
1772 cfg->line_outs = cfg->hp_outs; in parse_output_paths()
1773 memcpy(cfg->line_out_pins, cfg->hp_pins, in parse_output_paths()
1774 sizeof(cfg->hp_pins)); in parse_output_paths()
1775 cfg->hp_outs = 0; in parse_output_paths()
1776 memset(cfg->hp_pins, 0, sizeof(cfg->hp_pins)); in parse_output_paths()
1777 cfg->line_out_type = AUTO_PIN_HP_OUT; in parse_output_paths()
1786 *cfg = *best_cfg; in parse_output_paths()
1790 cfg->line_out_type, best_wired, best_mio); in parse_output_paths()
1791 debug_show_configs(codec, cfg); in parse_output_paths()
1793 if (cfg->line_out_pins[0]) { in parse_output_paths()
1804 if (spec->prefer_hp_amp || cfg->line_out_type == AUTO_PIN_HP_OUT) in parse_output_paths()
1808 set_pin_targets(codec, cfg->line_outs, cfg->line_out_pins, val); in parse_output_paths()
1809 if (cfg->line_out_type != AUTO_PIN_HP_OUT) in parse_output_paths()
1810 set_pin_targets(codec, cfg->hp_outs, cfg->hp_pins, PIN_HP); in parse_output_paths()
1811 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in parse_output_paths()
1813 set_pin_targets(codec, cfg->speaker_outs, in parse_output_paths()
1814 cfg->speaker_pins, val); in parse_output_paths()
1827 const struct auto_pin_cfg *cfg) in create_multi_out_ctls() argument
1832 noutputs = cfg->line_outs; in create_multi_out_ctls()
1833 if (spec->multi_ios > 0 && cfg->line_outs < 3) in create_multi_out_ctls()
2308 struct auto_pin_cfg *cfg = &spec->autocfg; in create_hp_mic() local
2318 if (cfg->num_inputs > 1) in create_hp_mic()
2320 else if (cfg->num_inputs == 1) { in create_hp_mic()
2321 defcfg = snd_hda_codec_get_pincfg(codec, cfg->inputs[0].pin); in create_hp_mic()
2328 if (cfg->num_inputs >= AUTO_CFG_MAX_INS) in create_hp_mic()
2332 if (cfg->line_out_type == AUTO_PIN_HP_OUT && cfg->line_outs > 0) in create_hp_mic()
2333 nid = cfg->line_out_pins[0]; in create_hp_mic()
2334 else if (cfg->hp_outs > 0) in create_hp_mic()
2335 nid = cfg->hp_pins[0]; in create_hp_mic()
2342 cfg->inputs[cfg->num_inputs].pin = nid; in create_hp_mic()
2343 cfg->inputs[cfg->num_inputs].type = AUTO_PIN_MIC; in create_hp_mic()
2344 cfg->inputs[cfg->num_inputs].is_headphone_mic = 1; in create_hp_mic()
2345 cfg->num_inputs++; in create_hp_mic()
2962 const struct auto_pin_cfg *cfg = &spec->autocfg; in fill_input_pin_labels() local
2965 for (i = 0; i < cfg->num_inputs; i++) { in fill_input_pin_labels()
2966 hda_nid_t pin = cfg->inputs[i].pin; in fill_input_pin_labels()
2973 label = hda_get_autocfg_input_label(codec, cfg, i); in fill_input_pin_labels()
2995 const struct auto_pin_cfg *cfg = &spec->autocfg; in create_input_ctls() local
3009 for (i = 0; i < cfg->num_inputs; i++) { in create_input_ctls()
3012 pin = cfg->inputs[i].pin; in create_input_ctls()
3017 if (cfg->inputs[i].type == AUTO_PIN_MIC) in create_input_ctls()
3248 struct auto_pin_cfg *cfg = &spec->autocfg; in is_inv_dmic_pin() local
3254 for (i = 0; i < cfg->num_inputs; i++) { in is_inv_dmic_pin()
3255 if (cfg->inputs[i].pin != nid) in is_inv_dmic_pin()
3257 if (cfg->inputs[i].type != AUTO_PIN_MIC) in is_inv_dmic_pin()
3539 struct auto_pin_cfg *cfg = &spec->autocfg; in parse_mic_boost() local
3557 if (cfg->inputs[idx].type > AUTO_PIN_LINE_IN) in parse_mic_boost()
3989 struct auto_pin_cfg *cfg = &spec->autocfg; in check_auto_mute_availability() local
3996 if (cfg->hp_pins[0]) in check_auto_mute_availability()
3998 if (cfg->line_out_pins[0]) in check_auto_mute_availability()
4000 if (cfg->speaker_pins[0]) in check_auto_mute_availability()
4005 if (!cfg->speaker_pins[0] && in check_auto_mute_availability()
4006 cfg->line_out_type == AUTO_PIN_SPEAKER_OUT) { in check_auto_mute_availability()
4007 memcpy(cfg->speaker_pins, cfg->line_out_pins, in check_auto_mute_availability()
4008 sizeof(cfg->speaker_pins)); in check_auto_mute_availability()
4009 cfg->speaker_outs = cfg->line_outs; in check_auto_mute_availability()
4012 if (!cfg->hp_pins[0] && in check_auto_mute_availability()
4013 cfg->line_out_type == AUTO_PIN_HP_OUT) { in check_auto_mute_availability()
4014 memcpy(cfg->hp_pins, cfg->line_out_pins, in check_auto_mute_availability()
4015 sizeof(cfg->hp_pins)); in check_auto_mute_availability()
4016 cfg->hp_outs = cfg->line_outs; in check_auto_mute_availability()
4019 for (i = 0; i < cfg->hp_outs; i++) { in check_auto_mute_availability()
4020 hda_nid_t nid = cfg->hp_pins[i]; in check_auto_mute_availability()
4030 if (cfg->line_out_type == AUTO_PIN_LINE_OUT && cfg->line_outs) { in check_auto_mute_availability()
4031 if (cfg->speaker_outs) in check_auto_mute_availability()
4032 for (i = 0; i < cfg->line_outs; i++) { in check_auto_mute_availability()
4033 hda_nid_t nid = cfg->line_out_pins[i]; in check_auto_mute_availability()
4045 spec->automute_speaker_possible = cfg->speaker_outs && in check_auto_mute_availability()
4099 struct auto_pin_cfg *cfg = &spec->autocfg; in check_auto_mic_availability() local
4108 for (i = 0; i < cfg->num_inputs; i++) { in check_auto_mic_availability()
4109 hda_nid_t nid = cfg->inputs[i].pin; in check_auto_mic_availability()
4117 if (cfg->inputs[i].type != AUTO_PIN_MIC) in check_auto_mic_availability()
4123 if (cfg->inputs[i].type > AUTO_PIN_LINE_IN) in check_auto_mic_availability()
4126 cfg->inputs[i].type != AUTO_PIN_MIC) in check_auto_mic_availability()
4186 struct auto_pin_cfg *cfg) in snd_hda_gen_parse_auto_config() argument
4196 if (cfg != &spec->autocfg) { in snd_hda_gen_parse_auto_config()
4197 spec->autocfg = *cfg; in snd_hda_gen_parse_auto_config()
4198 cfg = &spec->autocfg; in snd_hda_gen_parse_auto_config()
4208 if (!cfg->line_outs) { in snd_hda_gen_parse_auto_config()
4209 if (cfg->dig_outs || cfg->dig_in_pin) { in snd_hda_gen_parse_auto_config()
4218 cfg->line_out_type == AUTO_PIN_SPEAKER_OUT && in snd_hda_gen_parse_auto_config()
4219 cfg->line_outs <= cfg->hp_outs) { in snd_hda_gen_parse_auto_config()
4221 cfg->speaker_outs = cfg->line_outs; in snd_hda_gen_parse_auto_config()
4222 memcpy(cfg->speaker_pins, cfg->line_out_pins, in snd_hda_gen_parse_auto_config()
4223 sizeof(cfg->speaker_pins)); in snd_hda_gen_parse_auto_config()
4224 cfg->line_outs = cfg->hp_outs; in snd_hda_gen_parse_auto_config()
4225 memcpy(cfg->line_out_pins, cfg->hp_pins, sizeof(cfg->hp_pins)); in snd_hda_gen_parse_auto_config()
4226 cfg->hp_outs = 0; in snd_hda_gen_parse_auto_config()
4227 memset(cfg->hp_pins, 0, sizeof(cfg->hp_pins)); in snd_hda_gen_parse_auto_config()
4228 cfg->line_out_type = AUTO_PIN_HP_OUT; in snd_hda_gen_parse_auto_config()
4237 err = create_multi_out_ctls(codec, cfg); in snd_hda_gen_parse_auto_config()
4261 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) in snd_hda_gen_parse_auto_config()
4263 cfg->speaker_outs * 2); in snd_hda_gen_parse_auto_config()
4264 if (cfg->line_out_type != AUTO_PIN_HP_OUT) in snd_hda_gen_parse_auto_config()
4266 cfg->hp_outs * 2); in snd_hda_gen_parse_auto_config()
4291 if (cfg->line_out_type != AUTO_PIN_SPEAKER_OUT) { in snd_hda_gen_parse_auto_config()
4292 err = create_out_jack_modes(codec, cfg->line_outs, in snd_hda_gen_parse_auto_config()
4293 cfg->line_out_pins); in snd_hda_gen_parse_auto_config()
4297 if (cfg->line_out_type != AUTO_PIN_HP_OUT) { in snd_hda_gen_parse_auto_config()
4298 err = create_out_jack_modes(codec, cfg->hp_outs, in snd_hda_gen_parse_auto_config()
4299 cfg->hp_pins); in snd_hda_gen_parse_auto_config()
5010 struct auto_pin_cfg *cfg = &spec->autocfg; in init_analog_input() local
5013 for (i = 0; i < cfg->num_inputs; i++) { in init_analog_input()
5014 hda_nid_t nid = cfg->inputs[i].pin; in init_analog_input()