Modules: sound.o: This is the core of the sound system. As this module has to grab a large amount of DMA memory it should ideally be loaded near boot time and kept loaded (kerneld here is a bad idea in 2.0.x). The module takes no arguments. ad1848.o: Low level support for the AD1848/CS4248 codec used by things like the microsoft sound system. This has no configuration variables and provides only the support routines for other drivers. You can build this with -DDESKPROXL for compaq deskpro XL support. Thats a 'test' feature also in the original code. adlib_card.o: Support for the adlib card. This is basically an OPL3 on a board. Takes an io= argument for the I/O address of the OPL3 chip. The adlib has no interrupts. aedsp.o: Audio Excel DSP configuration module. Not yet converted FIXME: cs4232.o: Low level driver for the Crystal CS4232 derived cards and motherboard sound. Configuration items irq = board irq io = board io dma = 8bit DMA channel, 16bit DMA channel gus.o: GUS, GUS Max, GUS16 driver. Configuration items irq = board irq io = board io dma = 8bit DMA channel, 16bit DMA channel type = card type The type is normally autodetected but you can hint 0 = GUS/MAX/ACE 1 = GUS/PnP Needs the firmware to be installed before booting. mad16.o: MAD16 and relatives (Mozart et al) Lots and lots of configuration (I've extracted out the compiled in #defines in the original driver) io = board io irq = board irq dma16 = 16bit DMA (not always needed) dma = 8bit DMA cdtype = Type of CD attachment 0 = none 2 = CDU31A 4 = Mitsumi 6 = Panasonic 8 = Secondary IDE 10 = Primary IDE cdirq = CD irq if relevant cdport = CD I/O port 0x320 0x330 0x340 0x360 [Ignored if cdtype is IDE] cddma = CD DMA channel (if relevant) opl4 = enable OPL/4 (not Mozart) joystick = 1 to enable joystick. maui.o: Turtle Beach Maui and Tropez card driver Firmware must be loaded before booting Linux io = i/o address irq = irq to use mpu401.o: Driver for MPU401 cards io = i/o address, irq = irq to use Normally you would not specify these. The cards with an MPU401 will do it for you. By default the module if just loads runs as a library for other modules opl3.o: Driver for the OPL3 synth chip. io = i/o address Normally you would not specify this. Boards with OPL3 support will use this module directly. By default the module loads just as a library. pas2.o: Driver for the Pro AudioSpectrum, CBPC, Pro AudioSpectrum16 and ProAudioSpectrum-D cards Compile time defines -DBROKEN_BUS_CLOCK - supports machines with broken ISA bus timings. Only enable for these (guess thats a tech support handy hint;)) - if your sound is off/bad try it. FIXME: Make "joystick" setting module settable. Usual parameters io = i/o address irq = irq for board dma = DMA channel, 16bit DMA channel pss.o: Driver for the Personal Sound System. Needs a warmboot with firmware loaded to run the synth support. io = I/O address of board irq = interrupt for board sb.o: Soundblaster and related cards. Also as a support module for some "semi clone" cards. io = IO for card irq = IRQ for card dma = 8bit DMA, 16bit DMA channel type = card type 0 - autoprobe 1 - SB1.0 or 1.5 2 - SB2.0 3 - SB2.01 4 - SB pro 5 - SB 16/32/AWE 10 - Jazz16 11 - Logitech Soundman Wave 12 - ESS ES688/ES1688 13 - Aztech Sound Galaxy trix = 1 Load as library for trix.o pas2 = 1 Load as library for pas2 mad16 = 1 Load as module for the MAD16 Normally setting the type isn't needed acer = 1 Load as library for ACER laptop sb clones. sm_games = 1 Logitech Soundman games. Setting this uses better mixer settings for this card but does horrible noisy things on others. sscape.o: Ensonique Soundscape Warmboot from DOS having run SSINIT.EXE io = card I/O port dma = card DMA channel irq = card IRQ old_hardware - set to 1 if you have interrupt problems trix.o: MediaTrix and AudioTrix Pro driver Soft boot from DOS io = I/O address irq = IRQ dma = DMA address, 16bit DMA channel uart401.o: MPU401 driver library io = I/O address irq = IRQ Normally its loaded without these set as a support module for cards with the MPU401 uart present. uart6850.o: 6850 UART driver library io = I/O address irq = IRQ Normally this is loaded without these set as a support module for cards using a 6850. ============ CREDITS Alan Cox modularized the standard kernel sound drivers and did the technical work, sponsored by Red Hat Software. Mike Wangsmo performed the initial testing of the modules, maintains the documentation, and handles the bug reports. Pekka Pietik had done the work of porting these drivers to the 2.1.x kernel series starting with 2.1.48. .