Subject: Patch for the Audigy
To: None <tech-kern@netbsd.org>
From: Adam K Kirchhoff <adamk@voicenet.com>
List: tech-kern
Date: 05/27/2004 12:30:42
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---1463786752-1786243443-1085675286=:29975
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-ID: <Pine.LNX.4.58.0405271228191.30081@thorn.ashke.com>


Hello all,

	This patch wasn't written by me.  It's from Jacob Meuser, who's
primary focus was getting the Audigy working on OpenBSD.  A few months
ago, he sent me a patch he wrote for NetBSD, based on reviion 1.31 of
emuxki.c, 1.4 of emuxkireg.h, 1.6 of emuxkivar.h, 1.612 of pcidev (and
pcidevs.h), and 1.610 of pcidevs_data.h

	He wasn't going to submit the patches to the OpenBSD crew until he
has some remaining mixer issues resolved.  That was back in March, and
there's been no movement on this issues since then.  Basically, the driver
works great for me (Audigy1), but adjusting the master and PCM ranges with
the mixer has no impact on the volume.  Adjusting any of the inputs seems
to work fine.

	Jacob said I was free to do what I wanted with the patches.  I was
initially going to wait till he resolved the mixer issues, but decided the
best course of action was to at least make others aware that the patches
exist.  If someone else wants to get the mixer working properly, Jacob has
said he'd be quite happy :-)

	FYI, since this patch is from -CURRENT back in March, it does not
apply cleanly any more.  However, the rejects are fairly straightforward
and easily fixed.  If someone wants to explain to me how I can create a
unified diff from my source tree (from May 6th) I'll gladly post it here.

	BTW, if this is not the appropriate place for me to post this
patch, just let me know where to send it.

Adam

---1463786752-1786243443-1085675286=:29975
Content-Type: APPLICATION/OCTET-STREAM; NAME="netbsd-emuxki.diff.gz"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.4.58.0405271228060.29975@thorn.ashke.com>
Content-Description: 
Content-Disposition: ATTACHMENT; FILENAME="netbsd-emuxki.diff.gz"

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
F0+SfwBsPf1aeYwAAA==

---1463786752-1786243443-1085675286=:29975--