From owner-freebsd-multimedia@FreeBSD.ORG Wed Aug 13 14:17:01 2008 Return-Path: Delivered-To: freebsd-multimedia@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 79208106566B for ; Wed, 13 Aug 2008 14:17:01 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from cmail.optima.ua (cmail.optima.ua [195.248.191.121]) by mx1.freebsd.org (Postfix) with ESMTP id 01E568FC08 for ; Wed, 13 Aug 2008 14:17:00 +0000 (UTC) (envelope-from mav@FreeBSD.org) X-Spam-Flag: SKIP X-Spam-Yversion: Spamooborona-2.1.0 Received: from [212.86.226.226] (account mav@alkar.net HELO mavbook.mavhome.dp.ua) by cmail.optima.ua (CommuniGate Pro SMTP 5.1.14) with ESMTPSA id 193768241; Wed, 13 Aug 2008 17:16:59 +0300 Message-ID: <48A2ECD2.8030007@FreeBSD.org> Date: Wed, 13 Aug 2008 17:16:50 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.16 (X11/20080726) MIME-Version: 1.0 To: Andriy Gapon References: <53a1e0710808130628t451c5e87n28adb7d01b03dfd4@mail.gmail.com> <48A2E5DA.4060203@FreeBSD.org> <48A2E8D6.10806@icyb.net.ua> In-Reply-To: <48A2E8D6.10806@icyb.net.ua> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-multimedia@FreeBSD.org Subject: Re: RFC: massive snd_hda driver update to better conform UAA X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Aug 2008 14:17:01 -0000 Andriy Gapon wrote: > I've tried a slightly tweaked version of your releng_7 patch on 6.3. > It seems that with your patch recording stopped working for me, but > everything else is OK. > >>From (non-verbose) dmesg: > hdac0: mem > 0xfe024000-0xfe027fff irq 22 at device 16.1 on pci0 > hdac0: > hdac0: > hdac0: hdac_widget_connection_parse: nid=18 WARNING: zero cnid entnum=4 > j=2 index=0 entries=8 found=2 res=0x21002211 > hdac0: hdac_audio_as_parse: Pin 28 has wrong direction for association > 1! Disabling association. > hdac0: hdac_audio_as_parse: Pin 29 has wrong direction for association > 1! Disabling association. Thats probably why you have lost your recording. Some pins in association described as input, while another as output. In such case new driver just disables complete association. > pcm0: on hdac0 > pcm1: on hdac0 > > > I can see that current (non-patched) code has the following quirks for > the above two pins with my codec and my subvendor (ASUS M2NPV-MX > motherboard): > > } else if (id == HDA_CODEC_AD1986A && > (sc->pci_subvendor == ASUS_M2NPVMX_SUBVENDOR || > sc->pci_subvendor == ASUS_A8NVMCSM_SUBVENDOR)) { > switch (nid) { > case 28: /* LINE */ > config &= ~HDA_CONFIG_DEFAULTCONF_DEVICE_MASK; > config |= HDA_CONFIG_DEFAULTCONF_DEVICE_LINE_IN; > break; > case 29: /* MIC */ > config &= ~HDA_CONFIG_DEFAULTCONF_DEVICE_MASK; > config |= HDA_CONFIG_DEFAULTCONF_DEVICE_MIC_IN; > break; > default: > break; > } > } In new driver I have left this quirks and probably it is the reason. Probably your BIOS defines that pins as output same as some other ones. So probably we should or remove this quirks to get several more outputs or add some more pins here to get some inputs. Send me verbose dmesg output. It is easy to debug and fix such problems now. > BTW, I am also curios about two pcm devices that I got now. Which is > what? How can I use them? (Sorry if I missed this info in your original > message). Most of HDA codecs have several DACs/ADCs (I have seen from 2/2 to 6/3). In many cases their usage can be configured in different ways depending on parameters configured by BIOS and specified manually with device hints. What for they are used in your case you an find from digging verbose boot logging. For example you can setup your xmms to play via speakers, while skype will use external in mic and headphones. Or you can configure multichannel audio. -- Alexander Motin