Date: Sun, 3 Aug 2008 18:10:57 +0200 From: Rink Springer <rink@FreeBSD.org> To: alec@setfilepointer.com, brucem@mail.cruzio.com Cc: hackers@freebsd.org Subject: Patch for working AMD Geode CS5530 audio driver on HEAD Message-ID: <20080803161057.GB35301@rink.nu>
next in thread | raw e-mail | index | archive | help
Hi, As outlined in http://lists.freebsd.org/pipermail/freebsd-hackers/2008-January/022986.html, Alec had some problems with the snd_geode driver. While I cannot test whether it works using Geode CS5536 hardware, I've managed to get the driver to work using CS5530 hardware on FreeBSD HEAD. The patch is available at http://people.freebsd.org/~rink/various/ns_geode.diff - using this, my Compaq Evo T30 flawlessly plays MP3's. The problem was that the busdma tag allocation specifies a maximum allocation size of 65536 bytes, yet it had to do so using 1 segment of at most 65535 bytes (note: 1 byte less). Since the channel code tries to allocate 65536 bytes, this didn't work [1]; yet, the return code check was messages up (sndbuf_alloc() returns 0 on success, not -1 on failure) which caused page faults later on. I am interested in integrating this work in HEAD; however, if Alec and/or Bruce could try, see and hack away to make it work on the CS5536 (or are willing to ship me a system ;-), that'd be great. [1] Thanks to Scott Long for pointing me towards the right direction. Regards, -- Rink P.W. Springer - http://rink.nu "Anyway boys, this is America. Just because you get more votes doesn't mean you win." - Fox Mulder
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080803161057.GB35301>