From owner-freebsd-current@FreeBSD.ORG Fri Oct 24 13:11:44 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2FB17106567E for ; Fri, 24 Oct 2008 13:11:44 +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 A67BD8FC08 for ; Fri, 24 Oct 2008 13:11:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) X-Spam-Flag: SKIP X-Spam-Yversion: Spamooborona-2.1.0 Received: from orphanage.alkar.net (account mav@alkar.net [212.86.226.11] verified) by cmail.optima.ua (CommuniGate Pro SMTP 5.2.9) with ESMTPA id 226051857; Fri, 24 Oct 2008 16:11:42 +0300 Message-ID: <4901C98E.80002@FreeBSD.org> Date: Fri, 24 Oct 2008 16:11:42 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.14 (X11/20080612) MIME-Version: 1.0 To: Tobias Kirschstein , Tobias Grosser References: <20081023203221.677be8aa@lain> <4900CAF8.3010204@FreeBSD.org> <20081024140228.29c25156@lain> In-Reply-To: <20081024140228.29c25156@lain> X-Enigmail-Version: 0.95.0 Content-Type: multipart/mixed; boundary="------------040107000002000106050602" Cc: freebsd-current Subject: Re: again config problem with new snd_hda driver X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2008 13:11:44 -0000 This is a multi-part message in MIME format. --------------040107000002000106050602 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Tobias Kirschstein wrote: >>> from dmesg: >>> ----------- >>> hdac0: mem >>> 0xee240000-0xee243fff irq 17 at device 27.0 on pci0 hdac0: HDA >>> Driver Revision: 20081013_0113 hdac0: [ITHREAD] >>> hdac0: HDA Codec #0: Analog Devices AD1981HD >>> hdac0: HDA Codec #1: Conexant (Unknown) >>> pcm0: at cad 0 nid 1 on hdac0 >> To understand current driver behavior I need to see verbose kernel >> boot messages. Read them yourself and send them to me. > > rebooted now and here are the verbose boot messages for you :) Try please attached patch. It disables several unsupported signal paths inside the codec to help widget parser to manage it. There is actually two options in a patch: 1) To disable playback mixer so you will not hear what you are recording. But this situation is predictable. 2) To use that mixer for playback. You may get system beeper working, but it is hard to predict what will happen to recording. Test please and send me verbose logs from both cases if you can. -- Alexander Motin --------------040107000002000106050602 Content-Type: text/plain; name="hda.AD1981HD.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="hda.AD1981HD.patch" diff -ruNp hda.HEAD/hdac.c hda/hdac.c --- hda.HEAD/hdac.c 2008-10-23 21:30:06.000000000 +0300 +++ hda/hdac.c 2008-10-24 15:55:36.000000000 +0300 @@ -4510,6 +4510,36 @@ hdac_vendor_patch_parse(struct hdac_devi ~HDA_QUIRK_EAPDINV; } break; + case HDA_CODEC_AD1981HD: + /* Disable recording from mono mix. */ + w = hdac_widget_get(devinfo, 21); + if (w != NULL) + w->connsenable[15] = 0; + /* Disable rear front mic mixer. */ + w = hdac_widget_get(devinfo, 31); + if (w != NULL) + w->enable = 0; +#if 1 + /* Disable playback mixer, use bypass. */ + w = hdac_widget_get(devinfo, 14); + if (w != NULL) + w->enable = 0; +#else + /* Disable bypass, use playback mixer. */ + w = hdac_widget_get(devinfo, 5); + if (w != NULL) + w->connsenable[0] = 0; + w = hdac_widget_get(devinfo, 6); + if (w != NULL) + w->connsenable[0] = 0; + w = hdac_widget_get(devinfo, 9); + if (w != NULL) + w->connsenable[0] = 0; + w = hdac_widget_get(devinfo, 24); + if (w != NULL) + w->connsenable[0] = 0; +#endif + break; } } --------------040107000002000106050602--