aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/hda_generic.h
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2013-01-04 10:42:48 -0500
committerTakashi Iwai <tiwai@suse.de>2013-01-12 02:43:42 -0500
commitc30aa7b24282c6c544f25f360131fceb646927e4 (patch)
treeb1da236fb6df50dd8be84af255956289e0a781d8 /sound/pci/hda/hda_generic.h
parent117688a9c1023af9241810544b35c7104fbbcfc2 (diff)
ALSA: hda - Add Loopback Mixing control
For codecs that have individual routes going through a loopback mixer (like VIA codecs), we need to provide an explicit switch to choose whether the output goes through mixer or directly from DAC. This patch adds the check for such paths and creates "Loopback Mixing" enum control when available. It won't influence on codecs like Realtek or others where the loopback mixer is connected independently from the primary output routes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_generic.h')
-rw-r--r--sound/pci/hda/hda_generic.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_generic.h b/sound/pci/hda/hda_generic.h
index ba8de12b7125..d4a8f6c4e7a9 100644
--- a/sound/pci/hda/hda_generic.h
+++ b/sound/pci/hda/hda_generic.h
@@ -134,6 +134,7 @@ struct hda_gen_spec {
134 int out_paths[AUTO_CFG_MAX_OUTS]; 134 int out_paths[AUTO_CFG_MAX_OUTS];
135 int hp_paths[AUTO_CFG_MAX_OUTS]; 135 int hp_paths[AUTO_CFG_MAX_OUTS];
136 int speaker_paths[AUTO_CFG_MAX_OUTS]; 136 int speaker_paths[AUTO_CFG_MAX_OUTS];
137 int aamix_out_paths[3];
137 int digout_paths[AUTO_CFG_MAX_OUTS]; 138 int digout_paths[AUTO_CFG_MAX_OUTS];
138 int loopback_paths[HDA_MAX_NUM_INPUTS]; 139 int loopback_paths[HDA_MAX_NUM_INPUTS];
139 int digin_path; 140 int digin_path;
@@ -169,6 +170,9 @@ struct hda_gen_spec {
169 unsigned int indep_hp:1; /* independent HP supported */ 170 unsigned int indep_hp:1; /* independent HP supported */
170 unsigned int indep_hp_enabled:1; /* independent HP enabled */ 171 unsigned int indep_hp_enabled:1; /* independent HP enabled */
171 172
173 /* loopback mixing mode */
174 bool aamix_mode;
175
172 /* for virtual master */ 176 /* for virtual master */
173 hda_nid_t vmaster_nid; 177 hda_nid_t vmaster_nid;
174 struct hda_vmaster_mute_hook vmaster_mute; 178 struct hda_vmaster_mute_hook vmaster_mute;