Date: Sun, 10 Jul 2005 05:15:23 +0800 From: Ariff Abdullah <skywizard@MyBSD.org.my> To: noackjr@alumni.rice.edu Cc: freebsd-multimedia@freebsd.org, mat@cnd.mcgill.ca Subject: Re: Massive sound changes / fix (24/32bit pcm support, new sampling rate converter, various fixes) Message-ID: <20050710051523.0a67cd91.skywizard@MyBSD.org.my> In-Reply-To: <42D02CA9.4080201@alumni.rice.edu> References: <42D02CA9.4080201@alumni.rice.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 09 Jul 2005 14:59:37 -0500 Jonathan Noack <noackjr@alumni.rice.edu> wrote: > >> > Hardware spessific changes > >> > ========================== > >> > >> > 3. es137x.c / es137x.h > >> > * Register programming error during device initialization > >> > especially for CT4730 / EV1938 chip, causing misconfigured > >> > mixer (David Xu), crippled after power cycle (Kevin > >Oberman). > > Fixed. > >> > * Incorporate locking/spdif patches from Jon Noack. Not all > >> > es137x > >> > can really do spdif, clean it up a bit to only let few > >> > capable chip. > >> > >> --- /var/log/dmesg.today Sat Jul 9 13:13:45 2005 > >> +++ /var/run/dmesg.boot Sat Jul 9 20:04:47 2005 > >> @@ -57,7 +57,6 @@ > >> pci0: <multimedia, audio> at device 7.5 (no driver attached) > >> pcm0: <Creative CT5880-C> port 0xb800-0xb83f irq 5 at device 9.0 > >on > pci0 pcm0: <SigmaTel STAC9721/23 AC97 Codec> > >> -pcm0: [GIANT-LOCKED] > >> xl0: <3Com 3c905C-TX Fast Etherlink XL> port 0xbc00-0xbc7f mem > >> 0xe7000000-0xe700007f irq 11 at device 10.0 on pci0 miibus0: > ><MII > bus> on xl0 xlphy0: <3c905C 10/100 internal PHY> on miibus0 > >> > >> And the music plays just fine, no bad behavior so far. > >> > > Credit goes to Jonathan Noack for adding spdif / locking. If you > > think there are lots of pops / crackling sound, you may as well > > play around with sysctl hw.snd.pcm0.latency_timer (especially > > during untarring big tarball). > > My spdif work: > http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/68594 > Thanks for that. > Mathew Kanner did the original locking, which I cleaned up a bit: > http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/59349 > Oops... I thought it always you. > The _real_ credit for my locking work goes to the horrible > interactivity problems that plagued -CURRENT about a year ago. > Adding locking to the driver was a desperate attempt to get sound > without pauses... > Plus, I've added hw.snd.pcm<unit>.latency_timer to reduce any crackling noise down to nil (pciconf -w just too cryptic for that). This really improve situation especially with VIA motherboard and perhaps, others too. > In any case, I've been running these changes for at least a year > with no problems. I tried to pester folks into committing it many > times (with no success), so I am VERY excited about this work! > > I don't know if you've touched the man pages at all, but my latest > patch includes a man page update for the spdif sysctl: > http://www.noacks.org/freebsd/es137x.diff > Currently I haven't touched any man pages at all. Can you do separate patches for that? There are few new sysctls need to be documented, perhaps you can do that too. es137x: 1) hw.snd.pcm<unit>.latency_timer - PCI latency timer adjustment. Most pops / crackling issue can be solved by adjusting it to appropriate value (especially on VIA mobo). General Sound Driver: 1) hw.snd.feeder_rate_ratemin/ratemax - Minimum / Maximum allowable rate 2) hw.snd.feeder_rate_scaling - Rate conversion precision / quality (Most of the options already explained in feeder_rate.c) 3) hw.snd.feeder_rate_buffersize - Buffer space for rate converter There are few LORs (during boot) with this much integrated es137x (which I do believe false positives). Perhaps you can reproduce it by enabling WITNESS? http://staff.mybsd.org.my/skywizard/FreeBSD/sound/LOR/es137x_lor.txt (This is slightly outdated, some of it have bean dealt with) Thanks for your works! -- 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?20050710051523.0a67cd91.skywizard>