[ALSA] HDA/ALC260: 1/7 - Fix test model input mux label
authorJonathan Woithe <jwoithe@physics.adelaide.edu.au>
Tue, 28 Feb 2006 10:35:18 +0000 (11:35 +0100)
committerJaroslav Kysela <perex@suse.cz>
Wed, 22 Mar 2006 09:31:56 +0000 (10:31 +0100)
Modules: HDA Codec driver

This patch fixes input mux labels used for the ALC260 'test' model.  This is
needed to avoid confusion which comes about because the two ADCs in the
ALC260 have slightly different mappings for their input selectors. Since
this is just the test model it's sufficient to simply report both options
where they exist.  If a model comes along for which this becomes an issue,
the ALC260 input mux code will have to be extended to allow different mux
layouts for different ADCs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index ea4200a..b34d244 100644 (file)
@@ -2414,8 +2414,8 @@ static struct hda_input_mux alc260_capture_source = {
        },
 };
 
-/* On Fujitsu S702x laptops capture only makes sense from Mic/LineIn jack
- * and the internal CD lines.
+/* On Fujitsu S702x laptops capture only makes sense from Mic/LineIn jack,
+ * headphone jack and the internal CD lines.
  */
 static struct hda_input_mux alc260_fujitsu_capture_source = {
        .num_items = 3,
@@ -2790,16 +2790,26 @@ static hda_nid_t alc260_test_dac_nids[1] = {
 static hda_nid_t alc260_test_adc_nids[2] = {
        0x04, 0x05,
 };
+/* This is a bit messy since the two input muxes in the ALC260 have slight
+ * variations in their signal assignments.  The ideal way to deal with this
+ * is to extend alc_spec.input_mux to allow a different input MUX for each
+ * ADC.  For the purposes of the test model it's sufficient to just list
+ * both options for affected signal indices.  The separate input mux
+ * functionality only needs to be considered if a model comes along which
+ * actually uses signals 0x5, 0x6 and 0x7 for something which makes sense to
+ * record.
+ */
 static struct hda_input_mux alc260_test_capture_source = {
-       .num_items = 7,
+       .num_items = 8,
        .items = {
                { "MIC1 pin", 0x0 },
                { "MIC2 pin", 0x1 },
                { "LINE1 pin", 0x2 },
                { "LINE2 pin", 0x3 },
                { "CD pin", 0x4 },
-               { "LINE-OUT pin", 0x5 },
-               { "HP-OUT pin", 0x6 },
+               { "LINE-OUT pin (cap1), Mixer (cap2)", 0x5 },
+               { "HP-OUT pin (cap1), LINE-OUT pin (cap2)", 0x6 },
+               { "HP-OUT pin (cap2 only)", 0x7 },
         },
 };
 static struct snd_kcontrol_new alc260_test_mixer[] = {