f2ae16ee38
that I've done this properly, it does work though :) )... a few minor fixes to code part-Submitted-by: Luigi |
||
---|---|---|
.. | ||
ad1848.c | ||
clones.c | ||
dmabuf_auto.c | ||
dmabuf.c | ||
mss.h | ||
README | ||
sb_dsp.c | ||
sbcard.h | ||
sound.c | ||
sound.h | ||
soundcard.h | ||
ulaw.h |
--- A new FreeBSD sound driver --- by Luigi Rizzo (luigi@iet.unipi.it) This is an experimental version of the sound driver for FreeBSD. I have almost completely rewritten the main parts of the code, starting from the Voxware 3.5-alpha release with patches from Amancio Hasty. The only file which is largely similar to the original ones is "soundcard.h" (for compatibility reasons, since it contains the definition of all the ioctls). Visit http://www.iet.unipi.it/~luigi/FreeBSD.html for the latest information on the drivers. There you can obtain the latest source package that includes documentation on the design of the driver. CARD SUPPORT INFORMATION: For PnP cards, I also include the vendor_id and serial numbers of cards I have encountered. CS4236: PnP id 0x3642630e works like a charm. All modes, including full duplex, supported in MSS mode. CS4237: PnP id 0x3742630e I had early reports of success with this board, which is almost the same as the CS4236. CS4232: PnP id 0x3242630e this chip is reported as broken in the OSS documentation. As a matter of fact, on my Intel Zappa motherboard, I have problems in make it use the secondary DMA channel. I have it working in half duplex (both capture and playback) in SB3.2 emulation, and working in playback mode in MSS emulation. OPTi931: PnP id 0x3109143e The data sheets of this chip are very cryptic. I have it working in full duplex in all modes _except_ capture of uLAW/ALAW data. I am strongly convinced of a bug in the chip. I have sent email to OPTI but got no reply so far. In SB emulation mode the driver does not work yet (maybe I do not initialize it the right way). Another bug seems to affect full duplex operation -- it appears that at times DMA transfer are requested but not counted by the device. In normal DMA mode this causes deadlocks. The only solution I have found is to fetch the count from the ISA DMA registers, but this does not seem to work very well either. SB16 PnP: PnP id 0xXX008c0e There are many such cards (plain SB16 PnP, AWE32, AWE64, Vibra16, etc. all differing in the PnP id (and with different synthesis devices, which we do not support anyways). Since 970903 the driver supports them all, both capture and playback, 8 and 16 bits. GusPnP: PnP id 0x0100561e I have code to recognize the board as MSS, but have not tested it since I don't own the board. Hopefully someone will test it soon. OPTI925: PnP id 0x2509143e there is code to recognize it as a SB clone. I have reports that it probes ok, but not sure if it works. OPTI930: should work as an MSS clone, but support for it is not implemented yet.