From owner-freebsd-bugs@FreeBSD.ORG Fri Nov 23 09:30: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 5D14599 for ; Fri, 23 Nov 2012 09:30: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 38C948FC13 for ; Fri, 23 Nov 2012 09:30: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 qAN9U15h055673 for ; Fri, 23 Nov 2012 09:30:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id qAN9U1Bp055669; Fri, 23 Nov 2012 09:30:01 GMT (envelope-from gnats) Date: Fri, 23 Nov 2012 09:30:01 GMT Message-Id: <201211230930.qAN9U1Bp055669@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org Cc: From: David Demelier 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: David Demelier List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Nov 2012 09:30:01 -0000 The following reply was made to PR kern/173840; it has been noted by GNATS. From: David Demelier To: Alexander Motin Cc: bug-followup@freebsd.org Subject: Re: kern/173840: snd_hda(4) volume mixer not working anymore Date: Fri, 23 Nov 2012 10:22:52 +0100 --047d7b339bb5ce7a3e04cf2620c0 Content-Type: text/plain; charset=UTF-8 Thanks for your answer, I'll try this patch tonight and tell you if it works. However will you be able to fix it as universal way ? I've just have another question, when I boot and the hda probes devices I hear a big "tick" / "click" in the speakers (this was also happening on 9.0 and before) but I never found a solution.. It also happens if I mute the sound, setting the volume to 0 and then to 80 will generate these noise. Cheers, and thanks for your answer :-) 2012/11/23 Alexander Motin > 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 > -- Demelier David --047d7b339bb5ce7a3e04cf2620c0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Thanks for your answer, I'll try this patch tonight and tell you if it = works. However will you be able to fix it as universal way ?

I'v= e just have another question, when I boot and the hda probes devices I hear= a big "tick" / "click" in the speakers (this was also = happening on 9.0 and before) but I never found a solution.. It also happens= if I mute the sound, setting the volume to 0 and then to 80 will generate = these noise.

Cheers, and thanks for your answer :-)

2012/11/23 Alexander Motin <mav@freebsd.org= >
Hi.

I can't qualify it is as a driver bug. At most it is behavior change. T= here are two signal paths from the DACs to the pins in this CODEC: direct a= nd via the mixer. And there is no volume control on the direct path. In you= r 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 c= ases. Probably previously driver version did the right thing by accident.
Patch below should probably help in your case, but it is not universal enou= gh to commit it.

--- hdaa_patches.c =C2=A0 =C2=A0 =C2=A0(revision 243182)
+++ hdaa_patches.c =C2=A0 =C2=A0 =C2=A0(working copy)
@@ -442,6 +442,14 @@ hdaa_patch(struct hdaa_devinfo *devinfo)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (w !=3D NULL) =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 w->connsenable[3] =3D 0;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
+ =C2=A0 =C2=A0 =C2=A0 case HDA_CODEC_AD1984A:
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 w =3D hdaa_widget_get(de= vinfo, 7);
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (w !=3D NULL)
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 w->connsenable[0] =3D 0;
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 w =3D hdaa_widget_get(de= vinfo, 11);
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (w !=3D NULL)
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 w->connsenable[0] =3D 0;
+ =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
=C2=A0 =C2=A0 =C2=A0 =C2=A0 case HDA_CODEC_AD1986A:
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 /*
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0* This CODEC = has overcomplicated input mixing.


--
Alexander Motin



--
Demelier = David
--047d7b339bb5ce7a3e04cf2620c0--