From 17e7aec680a252ec0cea6d886d3983319af43ac4 Mon Sep 17 00:00:00 2001 From: Jonathan Woithe <jwoithe@physics.adelaide.edu.au> Date: Tue, 28 Feb 2006 11:35:18 +0100 Subject: [ALSA] HDA/ALC260: 1/7 - Fix test model input mux label 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 | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'sound') diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index ea4200a4ee4..b34d2448d17 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -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[] = { -- cgit v1.2.3-70-g09d2