Date: Wed, 14 Sep 2005 05:04:22 +0800 From: Ariff Abdullah <skywizard@MyBSD.org.my> To: Michael Nottebrock <lofi@freebsd.org> Cc: freebsd-multimedia@freebsd.org Subject: Re: As promised: Soft volume mixer controller (doesn't work for me) Message-ID: <20050914050422.39b2aa04.skywizard@MyBSD.org.my> In-Reply-To: <200509132234.25656.lofi@freebsd.org> References: <20050913075835.5f055747.skywizard@MyBSD.org.my> <200509132234.25656.lofi@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 13 Sep 2005 22:34:23 +0200 Michael Nottebrock <lofi@freebsd.org> wrote: > On Tuesday, 13. September 2005 01:58, Ariff Abdullah wrote: > > > Note on giving feedback: Please include (before / after applying > > patch):- > > Before: PCM volume control is binary - 0 is silent, everything else is > full volume. > > pcm0: <Intel ICH2 (82801BA)> port 0xe800-0xe83f,0xec00-0xecff irq 17 > at device 31.5 on pci0 > pcm0: <C-Media Electronics CMI9739 AC97 Codec> > > Mixer vol is currently set to 100:100 > Mixer pcm is currently set to 100:100 > Mixer speaker is currently set to 0:0 > Mixer line is currently set to 0:0 > Mixer mic is currently set to 0:0 > Mixer cd is currently set to 0:0 > Mixer rec is currently set to 11:11 > Mixer ogain is currently set to 50:50 > Mixer line1 is currently set to 0:0 > Mixer phin is currently set to 0:0 > Mixer phout is currently set to 0:0 > Mixer video is currently set to 0:0 > Recording source: line > > pcm0@pci0:31:5: class=0x040100 card=0x49611849 chip=0x24458086 > rev=0x05 hdr=0x00 > vendor = 'Intel Corporation' > device = '82801BA/BAM (ICH2/ICH2-M) AC'97 Audio Controller' > class = multimedia > subclass = audio > > After: Complete silence, regardless of mixer setting. > > pcm0: <Intel ICH2 (82801BA)> port 0xe800-0xe83f,0xec00-0xecff irq 17 > at device 31.5 on pci0 > pcm0: <C-Media Electronics CMI9739 AC97 Codec> > > Mixer vol is currently set to 100:100 > Mixer pcm is currently set to 100:100 > Mixer speaker is currently set to 0:0 > Mixer line is currently set to 0:0 > Mixer mic is currently set to 0:0 > Mixer cd is currently set to 0:0 > Mixer rec is currently set to 11:11 > Mixer ogain is currently set to 50:50 > Mixer line1 is currently set to 0:0 > Mixer phin is currently set to 0:0 > Mixer phout is currently set to 0:0 > Mixer video is currently set to 0:0 > > pcm0@pci0:31:5: class=0x040100 card=0x49611849 chip=0x24458086 > rev=0x05 hdr=0x00 > vendor = 'Intel Corporation' > device = '82801BA/BAM (ICH2/ICH2-M) AC'97 Audio Controller' > class = multimedia > subclass = audio > > (sorry, I need uname -a as well..) How about applying this one: --- ac97.c.diff BEGIN --- --- sys/dev/sound/pcm/ac97.c.orig Wed Sep 14 04:54:36 2005 +++ sys/dev/sound/pcm/ac97.c Wed Sep 14 05:00:10 2005 @@ -556,17 +556,25 @@ #endif switch (codec->id) { case 0x434d4941: /* CMI9738 */ + ac97_wrcd(codec, AC97_MIX_PCM, 0x8000); + break; case 0x434d4961: /* CMI9739 */ + ac97_wrcd(codec, AC97_MIX_MASTER, 0x8000); + ac97_wrcd(codec, AC97_MIX_PCM, 0x8000); + break; case 0x434d4983: /* CMI9761 */ - bzero(&codec->mix[SOUND_MIXER_PCM], - sizeof(codec->mix[SOUND_MIXER_PCM])); - codec->flags |= AC97_F_SOFTVOL; - if (d) - d->flags |= SD_F_SOFTVOL; + ac97_wrcd(codec, AC97_MIX_MASTER, 0x8808); + ac97_wrcd(codec, AC97_MIX_PCM, 0x8808); break; default: + return; break; } + bzero(&codec->mix[SOUND_MIXER_PCM], + sizeof(codec->mix[SOUND_MIXER_PCM])); + codec->flags |= AC97_F_SOFTVOL; + if (d) + d->flags |= SD_F_SOFTVOL; } static const char* --- ac97.c.diff END --- -- Ariff Abdullah MyBSD http://www.MyBSD.org.my (IPv6/IPv4) http://staff.MyBSD.org.my (IPv6/IPv4) http://tomoyo.MyBSD.org.my (IPv6/IPv4)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050914050422.39b2aa04.skywizard>