aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2011-11-07 09:24:17 -0500
committerTakashi Iwai <tiwai@suse.de>2011-11-08 02:59:36 -0500
commit82e14a4754599952f5504c1f696bbc77bdfd6009 (patch)
treea23a5f2047c5aa9bc691326d78106840e4c95373 /sound/pci
parent46900b5c55ece43b0e6ad7147ffb58e37ff45c82 (diff)
ALSA: hda/realtek - Drop ALC262 model=basic static configs
Now most of ALC262 stuff has been moved to the auto-parser, and no longer need for keeping model=basic. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/hda/alc262_quirks.c118
-rw-r--r--sound/pci/hda/patch_realtek.c8
2 files changed, 0 insertions, 126 deletions
diff --git a/sound/pci/hda/alc262_quirks.c b/sound/pci/hda/alc262_quirks.c
index fee7202c94ab..813855a94754 100644
--- a/sound/pci/hda/alc262_quirks.c
+++ b/sound/pci/hda/alc262_quirks.c
@@ -6,7 +6,6 @@
6/* ALC262 models */ 6/* ALC262 models */
7enum { 7enum {
8 ALC262_AUTO, 8 ALC262_AUTO,
9 ALC262_BASIC,
10 ALC262_ULTRA, 9 ALC262_ULTRA,
11 ALC262_MODEL_LAST /* last tag */ 10 ALC262_MODEL_LAST /* last tag */
12}; 11};
@@ -23,115 +22,9 @@ enum {
23#define alc262_modes alc260_modes 22#define alc262_modes alc260_modes
24#define alc262_capture_source alc882_capture_source 23#define alc262_capture_source alc882_capture_source
25 24
26static const hda_nid_t alc262_dmic_adc_nids[1] = {
27 /* ADC0 */
28 0x09
29};
30
31static const hda_nid_t alc262_dmic_capsrc_nids[1] = { 0x22 };
32
33static const struct snd_kcontrol_new alc262_base_mixer[] = {
34 HDA_CODEC_VOLUME("Front Playback Volume", 0x0c, 0x0, HDA_OUTPUT),
35 HDA_CODEC_MUTE("Front Playback Switch", 0x14, 0x0, HDA_OUTPUT),
36 HDA_CODEC_VOLUME("CD Playback Volume", 0x0b, 0x04, HDA_INPUT),
37 HDA_CODEC_MUTE("CD Playback Switch", 0x0b, 0x04, HDA_INPUT),
38 HDA_CODEC_VOLUME("Line Playback Volume", 0x0b, 0x02, HDA_INPUT),
39 HDA_CODEC_MUTE("Line Playback Switch", 0x0b, 0x02, HDA_INPUT),
40 HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT),
41 HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT),
42 HDA_CODEC_VOLUME("Mic Boost Volume", 0x18, 0, HDA_INPUT),
43 HDA_CODEC_VOLUME("Front Mic Playback Volume", 0x0b, 0x01, HDA_INPUT),
44 HDA_CODEC_MUTE("Front Mic Playback Switch", 0x0b, 0x01, HDA_INPUT),
45 HDA_CODEC_VOLUME("Front Mic Boost Volume", 0x19, 0, HDA_INPUT),
46 HDA_CODEC_VOLUME("Headphone Playback Volume", 0x0D, 0x0, HDA_OUTPUT),
47 HDA_CODEC_MUTE("Headphone Playback Switch", 0x15, 0x0, HDA_OUTPUT),
48 HDA_CODEC_VOLUME_MONO("Mono Playback Volume", 0x0e, 2, 0x0, HDA_OUTPUT),
49 HDA_CODEC_MUTE_MONO("Mono Playback Switch", 0x16, 2, 0x0, HDA_OUTPUT),
50 { } /* end */
51};
52
53#define alc262_capture_mixer alc882_capture_mixer 25#define alc262_capture_mixer alc882_capture_mixer
54#define alc262_capture_alt_mixer alc882_capture_alt_mixer 26#define alc262_capture_alt_mixer alc882_capture_alt_mixer
55 27
56/*
57 * generic initialization of ADC, input mixers and output mixers
58 */
59static const struct hda_verb alc262_init_verbs[] = {
60 /*
61 * Unmute ADC0-2 and set the default input to mic-in
62 */
63 {0x07, AC_VERB_SET_CONNECT_SEL, 0x00},
64 {0x07, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
65 {0x08, AC_VERB_SET_CONNECT_SEL, 0x00},
66 {0x08, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
67 {0x09, AC_VERB_SET_CONNECT_SEL, 0x00},
68 {0x09, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
69
70 /* Mute input amps (CD, Line In, Mic 1 & Mic 2) of the analog-loopback
71 * mixer widget
72 * Note: PASD motherboards uses the Line In 2 as the input for
73 * front panel mic (mic 2)
74 */
75 /* Amp Indices: Mic1 = 0, Mic2 = 1, Line1 = 2, Line2 = 3, CD = 4 */
76 {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
77 {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)},
78 {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(2)},
79 {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(3)},
80 {0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(4)},
81
82 /*
83 * Set up output mixers (0x0c - 0x0e)
84 */
85 /* set vol=0 to output mixers */
86 {0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
87 {0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
88 {0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
89 /* set up input amps for analog loopback */
90 /* Amp Indices: DAC = 0, mixer = 1 */
91 {0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
92 {0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
93 {0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
94 {0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
95 {0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
96 {0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
97
98 {0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40},
99 {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, 0xc0},
100 {0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40},
101 {0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24},
102 {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20},
103 {0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20},
104
105 {0x14, AC_VERB_SET_AMP_GAIN_MUTE, 0x0000},
106 {0x15, AC_VERB_SET_AMP_GAIN_MUTE, 0x0000},
107 {0x16, AC_VERB_SET_AMP_GAIN_MUTE, 0x0000},
108 {0x18, AC_VERB_SET_AMP_GAIN_MUTE, 0x0000},
109 {0x1a, AC_VERB_SET_AMP_GAIN_MUTE, 0x0000},
110
111 {0x14, AC_VERB_SET_CONNECT_SEL, 0x00},
112 {0x15, AC_VERB_SET_CONNECT_SEL, 0x01},
113
114 /* FIXME: use matrix-type input source selection */
115 /* Mixer elements: 0x18, 19, 1a, 1b, 1c, 1d, 14, 15, 16, 17, 0b */
116 /* Input mixer1: unmute Mic, F-Mic, Line, CD inputs */
117 {0x24, AC_VERB_SET_AMP_GAIN_MUTE, (0x7000 | (0x00 << 8))},
118 {0x24, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x03 << 8))},
119 {0x24, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x02 << 8))},
120 {0x24, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x04 << 8))},
121 /* Input mixer2 */
122 {0x23, AC_VERB_SET_AMP_GAIN_MUTE, (0x7000 | (0x00 << 8))},
123 {0x23, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x03 << 8))},
124 {0x23, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x02 << 8))},
125 {0x23, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x04 << 8))},
126 /* Input mixer3 */
127 {0x22, AC_VERB_SET_AMP_GAIN_MUTE, (0x7000 | (0x00 << 8))},
128 {0x22, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x03 << 8))},
129 {0x22, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x02 << 8))},
130 {0x22, AC_VERB_SET_AMP_GAIN_MUTE, (0x7080 | (0x04 << 8))},
131
132 { }
133};
134
135/* Samsung Q1 Ultra Vista model setup */ 28/* Samsung Q1 Ultra Vista model setup */
136static const struct snd_kcontrol_new alc262_ultra_mixer[] = { 29static const struct snd_kcontrol_new alc262_ultra_mixer[] = {
137 HDA_CODEC_VOLUME("Master Playback Volume", 0x0c, 0x0, HDA_OUTPUT), 30 HDA_CODEC_VOLUME("Master Playback Volume", 0x0c, 0x0, HDA_OUTPUT),
@@ -254,7 +147,6 @@ static const struct snd_kcontrol_new alc262_ultra_capture_mixer[] = {
254 * configuration and preset 147 * configuration and preset
255 */ 148 */
256static const char * const alc262_models[ALC262_MODEL_LAST] = { 149static const char * const alc262_models[ALC262_MODEL_LAST] = {
257 [ALC262_BASIC] = "basic",
258 [ALC262_ULTRA] = "ultra", 150 [ALC262_ULTRA] = "ultra",
259 [ALC262_AUTO] = "auto", 151 [ALC262_AUTO] = "auto",
260}; 152};
@@ -266,16 +158,6 @@ static const struct snd_pci_quirk alc262_cfg_tbl[] = {
266}; 158};
267 159
268static const struct alc_config_preset alc262_presets[] = { 160static const struct alc_config_preset alc262_presets[] = {
269 [ALC262_BASIC] = {
270 .mixers = { alc262_base_mixer },
271 .init_verbs = { alc262_init_verbs },
272 .num_dacs = ARRAY_SIZE(alc262_dac_nids),
273 .dac_nids = alc262_dac_nids,
274 .hp_nid = 0x03,
275 .num_channel_mode = ARRAY_SIZE(alc262_modes),
276 .channel_mode = alc262_modes,
277 .input_mux = &alc262_capture_source,
278 },
279 [ALC262_ULTRA] = { 161 [ALC262_ULTRA] = {
280 .mixers = { alc262_ultra_mixer }, 162 .mixers = { alc262_ultra_mixer },
281 .cap_mixer = alc262_ultra_capture_mixer, 163 .cap_mixer = alc262_ultra_capture_mixer,
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 50820708be3b..1f3d1686db1a 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -4483,14 +4483,6 @@ static int patch_alc262(struct hda_codec *codec)
4483 err = alc262_parse_auto_config(codec); 4483 err = alc262_parse_auto_config(codec);
4484 if (err < 0) 4484 if (err < 0)
4485 goto error; 4485 goto error;
4486#ifdef CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS
4487 else if (!err) {
4488 printk(KERN_INFO
4489 "hda_codec: Cannot set up configuration "
4490 "from BIOS. Using base mode...\n");
4491 board_config = ALC262_BASIC;
4492 }
4493#endif
4494 } 4486 }
4495 4487
4496 if (board_config != ALC_MODEL_AUTO) 4488 if (board_config != ALC_MODEL_AUTO)