At Tue, 17 Apr 2007 19:40:02 +0200,
Prakash Punnoor wrote:
>
> [1 <text/plain; iso-8859-1 (quoted-printable)>]
> Am Dienstag 17 April 2007 schrieb Takashi Iwai:
> > At Tue, 17 Apr 2007 17:40:04 +0200,
>
> > > Patch works for me. Just the "volume is 0 on ch setting change" bug left.
> >
> > Did you unmute and adjust surround and CLFE volumes properly
> > beforehand?
>
> Yes, of course...
OK then how about the patch below?
Takashi
diff -r ec904302b979 pci/hda/patch_analog.c
--- a/pci/hda/patch_analog.c Tue Apr 17 15:41:52 2007 +0200
+++ b/pci/hda/patch_analog.c Wed Apr 18 12:15:34 2007 +0200
@@ -751,42 +751,35 @@ static struct hda_verb ad1986a_init_verb
{ } /* end */
};
-/* additional verbs for 3-stack model */
-static struct hda_verb ad1986a_3st_init_verbs[] = {
- /* Mic selector, mix C/LFE (backmic) and Mic (frontmic) */
- {0x0f, AC_VERB_SET_CONNECT_SEL, 0x4},
- /* Line-in selectors */
- {0x10, AC_VERB_SET_CONNECT_SEL, 0x1},
- { } /* end */
-};
-
static struct hda_verb ad1986a_ch2_init[] = {
/* Surround out -> Line In */
- { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24 },
- { 0x1c, AC_VERB_SET_AMP_GAIN_MUTE, 0xb080},
+ { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN },
+ /* Line-in selectors */
+ { 0x10, AC_VERB_SET_CONNECT_SEL, 0x1 },
/* CLFE -> Mic in */
- { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24 },
- { 0x1d, AC_VERB_SET_AMP_GAIN_MUTE, 0xb080},
+ { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 },
+ /* Mic selector, mix C/LFE (backmic) and Mic (frontmic) */
+ { 0x0f, AC_VERB_SET_CONNECT_SEL, 0x4 },
{ } /* end */
};
static struct hda_verb ad1986a_ch4_init[] = {
/* Surround out -> Surround */
- { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40 },
- { 0x1c, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000},
+ { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+ { 0x10, AC_VERB_SET_CONNECT_SEL, 0x0 },
/* CLFE -> Mic in */
- { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x24 },
- { 0x1d, AC_VERB_SET_AMP_GAIN_MUTE, 0xb080},
+ { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 },
+ { 0x0f, AC_VERB_SET_CONNECT_SEL, 0x4 },
{ } /* end */
};
static struct hda_verb ad1986a_ch6_init[] = {
/* Surround out -> Surround out */
- { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40 },
- { 0x1c, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000},
+ { 0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+ { 0x10, AC_VERB_SET_CONNECT_SEL, 0x0 },
/* CLFE -> CLFE */
- { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40 },
- { 0x1d, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000},
+ { 0x1d, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT },
+ { 0x0f, AC_VERB_SET_CONNECT_SEL, 0x0 },
{ } /* end */
};
@@ -895,9 +888,8 @@ static int patch_ad1986a(struct hda_code
case AD1986A_3STACK:
spec->num_mixers = 2;
spec->mixers[1] = ad1986a_3st_mixers;
- spec->num_init_verbs = 3;
- spec->init_verbs[1] = ad1986a_3st_init_verbs;
- spec->init_verbs[2] = ad1986a_ch2_init;
+ spec->num_init_verbs = 2;
+ spec->init_verbs[1] = ad1986a_ch2_init;
spec->channel_mode = ad1986a_modes;
spec->num_channel_mode = ARRAY_SIZE(ad1986a_modes);
spec->need_dac_fix = 1;
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Alsa-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/alsa-user