From owner-freebsd-bugs@FreeBSD.ORG Fri Nov 23 01:00:01 2012 Return-Path: Delivered-To: freebsd-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 710DB323 for ; Fri, 23 Nov 2012 01:00:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 566C88FC18 for ; Fri, 23 Nov 2012 01:00:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id qAN1015T025853 for ; Fri, 23 Nov 2012 01:00:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id qAN101a9025852; Fri, 23 Nov 2012 01:00:01 GMT (envelope-from gnats) Date: Fri, 23 Nov 2012 01:00:01 GMT Message-Id: <201211230100.qAN101a9025852@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org Cc: From: Alexander Motin Subject: Re: kern/173840: snd_hda(4) volume mixer not working anymore X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Alexander Motin List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Nov 2012 01:00:01 -0000 The following reply was made to PR kern/173840; it has been noted by GNATS. From: Alexander Motin To: bug-followup@FreeBSD.org, demelier.david@gmail.com Cc: Subject: Re: kern/173840: snd_hda(4) volume mixer not working anymore Date: Fri, 23 Nov 2012 02:52:50 +0200 Hi. I can't qualify it is as a driver bug. At most it is behavior change. There are two signal paths from the DACs to the pins in this CODEC: direct and via the mixer. And there is no volume control on the direct path. In your specific case it is possible to route signal via the mixer and control it there. But present driver is unable to make reasonable selection in such cases. Probably previously driver version did the right thing by accident. Patch below should probably help in your case, but it is not universal enough to commit it. --- hdaa_patches.c (revision 243182) +++ hdaa_patches.c (working copy) @@ -442,6 +442,14 @@ hdaa_patch(struct hdaa_devinfo *devinfo) if (w != NULL) w->connsenable[3] = 0; break; + case HDA_CODEC_AD1984A: + w = hdaa_widget_get(devinfo, 7); + if (w != NULL) + w->connsenable[0] = 0; + w = hdaa_widget_get(devinfo, 11); + if (w != NULL) + w->connsenable[0] = 0; + break; case HDA_CODEC_AD1986A: /* * This CODEC has overcomplicated input mixing. -- Alexander Motin