Lines Matching +full:shared +full:- +full:pin
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 * Generic BIOS auto-parser helper functions for HD-audio
13 /* table entry for multi-io paths */
15 hda_nid_t pin; /* multi-io widget pin NID */ member
17 unsigned int ctl_in; /* cached input-pin control value */
22 * For output, stored in the order of DAC -> ... -> pin,
23 * for input, pin -> ... -> ADC.
27 * multi[] indicates whether it's a selector widget with multi-connectors
49 bool pin_fixed:1; /* path with fixed pin */
53 /* mic/line-in auto switching entry */
58 hda_nid_t pin; /* pin */ member
59 int idx; /* imux index, -1 = invalid */
60 unsigned int attr; /* pin attribute (INPUT_PIN_ATTR_*) */
78 int shared_primary; /* primary DAC is shared with main output */
79 int shared_surr; /* secondary DAC shared with main or primary */
80 int shared_clfe; /* third DAC shared with main or primary */
114 struct hda_multi_out multiout; /* playback set-up
119 hda_nid_t follower_dig_outs[3]; /* optional - for auto-parsing */
125 hda_nid_t dig_in_nid; /* digital-in NID; optional */
126 hda_nid_t mixer_nid; /* analog-mixer NID */
127 hda_nid_t mixer_merge_nid; /* aamix merge-point NID (optional) */
131 /* capture setup for dynamic dual-adc switch */
165 /* shared hp/mic */
190 /* auto-mic stuff */
194 /* for pin sensing */
208 unsigned int detect_lo:1; /* Line-out detection enabled */
215 unsigned int line_in_auto_switch:1; /* allow line-in auto switch */
216 unsigned int auto_mute_via_amp:1; /* auto-mute via amp instead of pinctl */
224 unsigned int hp_mic:1; /* Allow HP as a mic-in */
260 /* preferred pin/DAC pairs; an array of paired NIDs */
277 /* multi-io */
317 HDA_HINT_STEREO_MIX_AUTO, /* Add only if auto-mic is disabled */
359 int snd_hda_gen_fix_pin_power(struct hda_codec *codec, hda_nid_t pin);