Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 144903
Collapse All | Expand All

(-)alsa-driver-1.0.12rc3/alsa-kernel/pci/hda/patch_realtek.c (+98 lines)
Lines 111-116 Link Here
111
	ALC883_3ST_6ch,
111
	ALC883_3ST_6ch,
112
	ALC883_6ST_DIG,
112
	ALC883_6ST_DIG,
113
	ALC888_DEMO_BOARD,
113
	ALC888_DEMO_BOARD,
114
	ALC883_ACER,
114
	ALC883_AUTO,
115
	ALC883_AUTO,
115
	ALC883_MODEL_LAST,
116
	ALC883_MODEL_LAST,
116
};
117
};
Lines 4956-4961 Link Here
4956
	{ }
4957
	{ }
4957
};
4958
};
4958
4959
4960
static struct hda_verb alc883_acer_init_verbs[] = {
4961
	/* On TravelMate laptops, GPIO 0 enables the internal speaker and
4962
	 * the headphone jack.  Turn this on and rely on the standard mute
4963
	 * methods whenever the user wants to turn these outputs off.
4964
	 */
4965
	{0x01, AC_VERB_SET_GPIO_MASK, 0x01},
4966
	{0x01, AC_VERB_SET_GPIO_DIRECTION, 0x01},
4967
	{0x01, AC_VERB_SET_GPIO_DATA, 0x01},
4968
	/* ADC1: mute amp left and right */
4969
	{0x08, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4970
	{0x08, AC_VERB_SET_CONNECT_SEL, 0x00},
4971
	/* ADC2: mute amp left and right */
4972
	{0x09, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4973
	{0x09, AC_VERB_SET_CONNECT_SEL, 0x00},
4974
	/* Front mixer: unmute input/output amp left and right (volume = 0) */
4975
	{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
4976
	{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4977
	{0x0c, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)},
4978
	/* Rear mixer */
4979
	{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
4980
	{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4981
	{0x0d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)},
4982
	/* CLFE mixer */
4983
	{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
4984
	{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4985
	{0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)},
4986
	/* Side mixer */
4987
	{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_ZERO},
4988
	{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
4989
	{0x0f, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)},
4990
4991
	{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
4992
	{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
4993
	{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)},
4994
	{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(3)},
4995
	{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)},
4996
4997
	/* Front Pin: output 0 (0x0c) */
4998
	{0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
4999
	{0x14, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
5000
	{0x14, AC_VERB_SET_CONNECT_SEL, 0x00},
5001
	/* Rear Pin: output 1 (0x0d) */
5002
	{0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
5003
	{0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
5004
	{0x15, AC_VERB_SET_CONNECT_SEL, 0x01},
5005
	/* CLFE Pin: output 2 (0x0e) */
5006
	{0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
5007
	{0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
5008
	{0x16, AC_VERB_SET_CONNECT_SEL, 0x02},
5009
	/* Side Pin: output 3 (0x0f) */
5010
	{0x17, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
5011
	{0x17, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
5012
	{0x17, AC_VERB_SET_CONNECT_SEL, 0x03},
5013
	/* Mic (rear) pin: input vref at 80% */
5014
	{0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80},
5015
	{0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
5016
	/* Front Mic pin: input vref at 80% */
5017
	{0x19, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80},
5018
	{0x19, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
5019
	/* Line In pin: input */
5020
	{0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN},
5021
	{0x1a, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
5022
	/* Line-2 In: Headphone output (output 0 - 0x0c) */
5023
	{0x1b, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP},
5024
	{0x1b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE},
5025
	{0x1b, AC_VERB_SET_CONNECT_SEL, 0x00},
5026
	/* CD pin widget for input */
5027
	{0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN},
5028
5029
	/* FIXME: use matrix-type input source selection */
5030
	/* Mixer elements: 0x18, 19, 1a, 1b, 1c, 1d, 14, 15, 16, 17, 0b */
5031
	/* Input mixer2 */
5032
	{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
5033
	{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
5034
	{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)},
5035
	{0x23, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)},
5036
	/* Input mixer3 */
5037
	{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)},
5038
	{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
5039
	{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(2)},
5040
	{0x22, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(4)},
5041
	{ }
5042
};
5043
4959
/*
5044
/*
4960
 * generic initialization of ADC, input mixers and output mixers
5045
 * generic initialization of ADC, input mixers and output mixers
4961
 */
5046
 */
Lines 5064-5069 Link Here
5064
	{ .pci_subvendor = 0x105b, .pci_subdevice = 0x6668,
5149
	{ .pci_subvendor = 0x105b, .pci_subdevice = 0x6668,
5065
	  .config = ALC883_6ST_DIG }, /* Foxconn */
5150
	  .config = ALC883_6ST_DIG }, /* Foxconn */
5066
	{ .modelname = "6stack-dig-demo", .config = ALC888_DEMO_BOARD },
5151
	{ .modelname = "6stack-dig-demo", .config = ALC888_DEMO_BOARD },
5152
	{ .pci_subvendor = 0x1025, .pci_subdevice = 0/*0x0102*/, .config = ALC883_ACER },
5067
	{ .modelname = "auto", .config = ALC883_AUTO },
5153
	{ .modelname = "auto", .config = ALC883_AUTO },
5068
	{}
5154
	{}
5069
};
5155
};
Lines 5134-5139 Link Here
5134
		.channel_mode = alc883_sixstack_modes,
5220
		.channel_mode = alc883_sixstack_modes,
5135
		.input_mux = &alc883_capture_source,
5221
		.input_mux = &alc883_capture_source,
5136
	},
5222
	},
5223
	[ALC883_ACER] = {
5224
		.mixers = { alc883_base_mixer,
5225
			    alc883_chmode_mixer },
5226
		.init_verbs = { alc883_acer_init_verbs },
5227
		.num_dacs = ARRAY_SIZE(alc883_dac_nids),
5228
		.dac_nids = alc883_dac_nids,
5229
		.num_adc_nids = ARRAY_SIZE(alc883_adc_nids),
5230
		.adc_nids = alc883_adc_nids,
5231
		.num_channel_mode = ARRAY_SIZE(alc883_3ST_2ch_modes),
5232
		.channel_mode = alc883_3ST_2ch_modes,
5233
		.input_mux = &alc883_capture_source,
5234
	},
5137
};
5235
};
5138
5236
5139
5237

Return to bug 144903