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 */
105 struct hda_multi_out multiout; /* playback set-up
110 hda_nid_t follower_dig_outs[3]; /* optional - for auto-parsing */
116 hda_nid_t dig_in_nid; /* digital-in NID; optional */
117 hda_nid_t mixer_nid; /* analog-mixer NID */
118 hda_nid_t mixer_merge_nid; /* aamix merge-point NID (optional) */
122 /* capture setup for dynamic dual-adc switch */
156 /* shared hp/mic */
181 /* auto-mic stuff */
185 /* for pin sensing */
199 unsigned int detect_lo:1; /* Line-out detection enabled */
206 unsigned int line_in_auto_switch:1; /* allow line-in auto switch */
207 unsigned int auto_mute_via_amp:1; /* auto-mute via amp instead of pinctl */
215 unsigned int hp_mic:1; /* Allow HP as a mic-in */
223 unsigned int vmaster_mute_led:1; /* add SPK-LED flag to vmaster mute switch */
224 unsigned int mic_mute_led:1; /* add MIC-LED flag to capture mute switch */
252 /* preferred pin/DAC pairs; an array of paired NIDs */
269 /* multi-io */
306 HDA_HINT_STEREO_MIX_AUTO, /* Add only if auto-mic is disabled */
347 int snd_hda_gen_fix_pin_power(struct hda_codec *codec, hda_nid_t pin);