From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: azx: New board, can't get rear IO connectors to work. Date: Fri, 17 Dec 2004 15:52:09 +0100 Message-ID: References: Mime-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: multipart/mixed; boundary="Multipart_Fri_Dec_17_15:52:09_2004-1" Return-path: In-Reply-To: Sender: alsa-devel-admin@lists.sourceforge.net Errors-To: alsa-devel-admin@lists.sourceforge.net List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , List-Archive: To: Stephen Warren Cc: alsa-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org --Multipart_Fri_Dec_17_15:52:09_2004-1 Content-Type: text/plain; charset=US-ASCII At Thu, 16 Dec 2004 13:17:02 -0800, Stephen Warren wrote: > > I'm attempting to get audio up and running on a new system with the > HD-Audio/ALC880. > > Part of the connectivity is: > > Line-2 pins are output, and connect to both the internal speakers on the > laptop, and a headphone jack. If I configure NID 0x1b as output, and NID > 0x13 to select the "front" input source, then program mixer NID 0x0c > correctly, and send data to DAC 0x02, then I hear audio on the speakers > (or headphones) just fine. Alsamixer correctly controls the volume. > > However, there are also 3 audio jacks on the back of the system - > namely, front, surround and center/lfe. These are allegedly connected to > the front, surround and center/lfe pins on the ALC880 (the side-surround > pins are unused). > > Now, I know DAC 0x02 and mixer 0x0c are working fine, since they affect > the internal speakers when routed through 0x13/0x1b. > > However, if I program pin NID 0x14 (front out) just like I programmed > pin NID 0x1b (line2), then I can't get anything to come out. As an > experiment, I tried every possible programming of pin NID 0x14, and > nothing works! > > The same experiment using DAC 0x03/0x04 and associated output pins > doesn't work either. I've sat running speakertest, plugging both > headphones and regular PC speakers into all the audio jacks, and no > luck. > > (I've also tested all the other DACs and mixers by routing them out the > line2 output, so I know the problem only lies with the other output pin > configuration, or beyond somewhere on the PCB) > > Any ideas of anything else I might try to debug this? I tested the test board here (which has 3-stack + front-panel) and found that the surround doesn't work here, too. It's because the wrong initialization sequence when switched to the 6-channel mode. After fixing it, the surround seems working well with 6-ch mode. The patch is below (already committed to CVS). I guess the wrong pin control assignment or the unmuted amp volumes in somewhere in your case, too. Takashi --Multipart_Fri_Dec_17_15:52:09_2004-1 Content-Type: text/plain; charset=US-ASCII Index: alsa-driver/pci/azx/patch_realtek.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/pci/azx/patch_realtek.c,v retrieving revision 1.5 diff -u -r1.5 patch_realtek.c --- alsa-driver/pci/azx/patch_realtek.c 17 Dec 2004 14:12:15 -0000 1.5 +++ alsa-driver/pci/azx/patch_realtek.c 17 Dec 2004 14:42:19 -0000 @@ -203,32 +203,14 @@ { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000 }, /* for rear channel output using Line In 1 * set select widget connection (nid = 0x12) - to summer node - * for front NID = 0x0C...offset 0 in connection list + * for rear NID = 0x0f...offset 3 in connection list */ { 0x12, AC_VERB_SET_CONNECT_SEL, 0x3 }, - /* Program PW for Line In pin NID = 0x1A */ - /* set select pin widget connection - to selector node - * NID = 0x10...offset 0 in connection list - */ - { 0x1a, AC_VERB_SET_CONNECT_SEL, 0x0 }, - /* Rear Pin Widget AMP SETUP (LEFT) */ - /* set the summer gain/mute to unmute */ - { 0x1a, AC_VERB_SET_AMP_GAIN_MUTE, 0xb080 }, - /* program R_PW controls to output instead of default input */ - { 0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40 }, /* for Mic1 - retask for center/lfe */ /* set select widget connection (nid = 0x10) - to summer node for - * front NID = 0x0C...offset 0 in connection list + * front CLFE NID = 0x0e...offset 2 in connection list */ { 0x10, AC_VERB_SET_CONNECT_SEL, 0x2 }, - /* set select pin widget connection - to selector node - * NID = 0x10...offset 0 in connection list - */ - { 0x18, AC_VERB_SET_CONNECT_SEL, 0x0 }, - /* Rear Pin Widget AMP SETUP (LEFT) */ - { 0x18, AC_VERB_SET_AMP_GAIN_MUTE, 0xb080 }, - /* program R_PW controls to output instead of default input */ - { 0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x40 }, { } /* end */ }; @@ -261,14 +243,9 @@ { 0x1a, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000 }, /* output for surround channel output using Line In 1 */ /* set select widget connection (nid = 0x12) - to summer node - * for front NID = 0x0C + * for surr_rear NID = 0x0d...offset 1 in connection list */ { 0x12, AC_VERB_SET_CONNECT_SEL, 0x1 }, - /* Program PW for Line In pin NID = 0x1A */ - /* set select pin widget connection - to selector node NID = 0x10 */ - { 0x1a, AC_VERB_SET_CONNECT_SEL, 0x0 }, - /* Rear Pin Widget AMP SETUP (LEFT) */ - { 0x1a, AC_VERB_SET_AMP_GAIN_MUTE, 0xb000 }, { } /* end */ }; @@ -462,7 +439,7 @@ */ static struct hda_verb alc880_init_verbs_three_stack[] = { - /* Line In pin widget(nid=0x14) for input */ + /* Line In pin widget(nid=0x1a) for input */ {0x1a, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20}, /* CD pin widget(nid=0x1C) for input */ {0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, 0x20}, --Multipart_Fri_Dec_17_15:52:09_2004-1-- ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/