ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / Documentation / sound / alsa / ALSA-Configuration.txt
1
2                 Advanced Linux Sound Architecture - Driver
3                 ==========================================
4                             Configuration guide
5
6
7 Kernel Configuration
8 ====================
9
10 To enable the ALSA support, at least you need to build the kernel with
11 the primary sound card support (CONFIG_SOUND).  Since ALSA can emulate
12 the OSS, you don't have to choose any of the OSS/Free modules.  Please
13 enable "OSS API emulation" (CONFIG_SND_OSSEMUL) and both OSS mixer and
14 PCM supports if you want to run the OSS application with the ALSA.
15
16 When you want to support the WaveTable functionality on some cards
17 such like SB Live!, you need to enable "Sequencer support"
18 (CONFIG_SND_SEQUENCER).
19
20 For getting more verbose debug messages, turn on "Verbose printk" and
21 "Debug" options.  For checking the memory leaks, you can turn on
22 "Debug memory" option, too.  "Debug detection" will put more
23 additional checks for the detection of cards.
24
25 Please note that all the ALSA ISA drivers support Linux isapnp API (if
26 the card supports).  You don't need to configure the PnP via
27 isapnptools.
28
29
30 Creating ALSA devices
31 =====================
32
33 Use the /dev/MAKEDEV script to create the nessecary device nodes.
34
35
36 Module parameters
37 =================
38
39   A user can modify or set parameters at the load time of the module. If
40   the module supports more cards and you have got more than one card
41   of the same type, you may simply specify more values for the parameter,
42   delimited by commas.
43   
44   Note that module option names were changed in 0.9.0rc4. The 'snd_'
45   prefix was removed.
46
47   Module snd
48   ----------
49
50     The module snd is the ALSA core module, which is used by all ALSA
51     card drivers.  This takes the global options for creating devices,
52     etc.
53
54     major       - major # for sound driver
55                 - default is 116
56     cards_limit
57                 - specifies card limit # for auto-loading (1-8)
58                 - default is 1
59                 - for auto-loading more than 1 card, specify this option
60                   together with snd-card-X aliases.
61     device_mode
62                 - specifies permission mask for dynamic sound device filesystem
63                   (available only when DEVFS is enabled)
64                 - default value = 0666
65                 - for example 'device_mode=0660'
66
67   
68   Module snd-pcm-oss
69   ------------------
70
71     The PCM OSS emulation module.
72     This module takes the options to change the mapping of devices.
73
74     dsp_map     - PCM device number maps assigned to the 1st OSS device.
75                   (default: 0)
76     adsp_map    - PCM device number maps assigned to the 2st OSS device.
77                   (default: 1)
78     nonblock_open - Don't block opening busy PCM devices.
79
80     For example, when dsp_map=2, /dev/dsp will be mapped to PCM #2 of
81     the card #0.  Similarly, when adsp_map=0, /dev/adsp will be mapped
82     to PCM #0 of the card #0.
83     For changing the second or later card, specify the option with
84     commas, such like "dsp_map=0,1".
85
86     nonblock_open option is used to change the behavior of the PCM
87     regarding opening the device.  When this option is non-zero,
88     opening a busy OSS PCM device won't be blocked but return
89     immediately with EAGAIN (just like O_NONBLOCK flag).
90     
91   Module snd-rawmidi
92   ------------------
93
94     This module takes the options to change the mapping of OSS
95     devices like snd-pcm-oss module.
96
97     midi_map    - MIDI device number maps assigned to the 1st OSS device.
98                   (default: 0)
99     amidi_map   - MIDI device number maps assigned to the 2st OSS device.
100                   (default: 1)
101
102   Common parameters for top soundcard modules
103   -------------------------------------------
104
105     Each of top-level soundcard module takes some general options,
106
107     index       - 0-7 - index (slot #) for soundcard
108                 - if not set or -1, first free index (slot #) is assigned
109     id          - user identification for card (up to 15 chars)
110                 - default expression is 'card<index>' (for example card1)
111                 - value is used for /proc/asound filesystem
112                 - this value can be used by applications for identification
113                   of card if user does not want identify card with index number
114     enable      - enable card.  (all cards enabled for PCI and ISA PnP cards
115                   as default.)
116
117   Module snd-ad1816a
118   ------------------
119
120     Module for soundcards based on Analog Devices AD1816A/AD1815 ISA chips.
121
122     port        - port # for AD1816A chip (PnP setup)
123     mpu_port    - port # for MPU-401 UART (PnP setup)
124     fm_port     - port # for OPL3 (PnP setup)
125     irq         - IRQ # for AD1816A chip (PnP setup)
126     mpu_irq     - IRQ # for MPU-401 UART (PnP setup)
127     dma1        - first DMA # for AD1816A chip (PnP setup)
128     dma2        - second DMA # for AD1816A chip (PnP setup)
129     
130     Module supports up to 8 cards, autoprobe and PnP.
131     
132   Module snd-ad1848
133   -----------------
134
135     Module for soundcards based on AD1848/AD1847/CS4248 ISA chips.
136
137     port        - port # for AD1848 chip
138     irq         - IRQ # for AD1848  chip
139     dma1        - DMA # for AD1848 chip (0,1,3)
140     
141     Module supports up to 8 cards. This module does not support autoprobe
142     thus main port must be specified!!! Other ports are optional.
143     
144   Module snd-ali5451
145   ------------------
146
147     Module for ALi M5451 PCI chip.
148
149     pcm_channels    - Number of hardware channels assigned for PCM
150     spdif           - Support SPDIF I/O (disabled by default)
151
152     Module supports autoprobe and multiple chips (max 8).
153
154     The power-management is supported.
155
156   Module snd-als100
157   -----------------
158
159     Module for soundcards based on Avance Logic ALS100/ALS120 ISA chips.
160
161     port        - port # for ALS100 (SB16) chip (PnP setup)
162     irq         - IRQ # for ALS100 (SB16) chip (PnP setup)
163     dma8        - 8-bit DMA # for ALS100 (SB16) chip (PnP setup)
164     dma16       - 16-bit DMA # for ALS100 (SB16) chip (PnP setup)
165     mpu_port    - port # for MPU-401 UART (PnP setup)
166     mpu_irq     - IRQ # for MPU-401 (PnP setup)
167     fm_port     - port # for OPL3 FM (PnP setup)
168     
169     Module supports up to 8 cards, autoprobe and PnP.
170
171   Module snd-als4000
172   ------------------
173
174     Module for soundcards based on Avance Logic ALS4000 PCI chip.
175
176     joystick_port - port # for legacy joystick support.
177                     0 = disabled (default), 1 = auto-detect
178     
179     Module supports up to 8 cards, autoprobe and PnP.
180
181   Module snd-atiixp
182   -----------------
183
184     Module for ATI IXP 150/200/250 AC97 controllers.
185
186     ac97_clock          - AC'97 clock (defalut = 48000)
187     spdif_aclink        - S/PDIF transfer over AC-link (default = 1)
188
189     This module supports up to 8 cards and autoprobe.
190
191   Module snd-au8810, snd-au8820, snd-au8830
192   -----------------------------------------
193
194     Module for Aureal Vortex, Vortex2 and Advantage device.
195
196     pcifix      - Control PCI workarounds
197                   0 = Disable all workarounds
198                   1 = Force the PCI latency of the Aureal card to 0xff
199                   2 = Force the Extend PCI#2 Internal Master for Efficient
200                       Handling of Dummy Requests on the VIA KT133 AGP Bridge
201                   3 = Force both settings
202                   255 = Autodetect what is required (default)
203
204     This module supports all ADB PCM channels, ac97 mixer, SPDIF, hardware
205     EQ, mpu401, gameport. A3D and wavetable support are still in development.
206     Development and reverse engineering work is being coordinated at
207     http://savannah.nongnu.org/projects/openvortex/
208     SPDIF output has a copy of the AC97 codec output, unless you use the
209     "spdif" pcm device, which allows raw data passthru.
210     The hardware EQ hardware and SPDIF is only present in the Vortex2 and 
211     Advantage.
212
213     Note: Some ALSA mixer applicactions don't handle the SPDIF samplerate 
214            control correctly. If you have problems regarding this, try
215            another ALSA compliant mixer (alsamixer works).
216
217   Module snd-azt2320
218   ------------------
219
220     Module for soundcards based on Aztech System AZT2320 ISA chip (PnP only).
221
222     port        - port # for AZT2320 chip (PnP setup)
223     wss_port    - port # for WSS (PnP setup)
224     mpu_port    - port # for MPU-401 UART (PnP setup)
225     fm_port     - FM port # for AZT2320 chip (PnP setup)
226     irq         - IRQ # for AZT2320 (WSS) chip (PnP setup)
227     mpu_irq     - IRQ # for MPU-401 UART (PnP setup)
228     dma1        - 1st DMA # for AZT2320 (WSS) chip (PnP setup)
229     dma2        - 2nd DMA # for AZT2320 (WSS) chip (PnP setup)
230     
231     Module supports up to 8 cards, PnP and autoprobe.
232     
233   Module snd-azt3328
234   ------------------
235
236     Module for soundcards based on Aztech AZF3328 PCI chip.
237
238     joystick    - Enable joystick (default off)
239
240     Module supports up to 8 cards.
241
242   Module snd-bt87x
243   ----------------
244
245     Module for video cards based on Bt87x chips.
246
247     digital_rate - Override the default digital rate (Hz)
248
249     Module supports up to 8 cards.
250
251   Module snd-cmi8330
252   ------------------
253
254     Module for soundcards based on C-Media CMI8330 ISA chips.
255
256     wssport     - port # for CMI8330 chip (WSS)
257     wssirq      - IRQ # for CMI8330 chip (WSS)
258     wssdma      - first DMA # for CMI8330 chip (WSS)
259     sbport      - port # for CMI8330 chip (SB16)
260     sbirq       - IRQ # for CMI8330 chip (SB16)
261     sbdma8      - 8bit DMA # for CMI8330 chip (SB16)
262     sbdma16     - 16bit DMA # for CMI8330 chip (SB16)
263
264     Module supports up to 8 cards and autoprobe.
265
266   Module snd-cmipci
267   -----------------
268
269     Module for C-Media CMI8338 and 8738 PCI soundcards.
270
271     mpu_port    - 0x300,0x310,0x320,0x330, 0 = disable (default)
272     fm_port     - 0x388 (default), 0 = disable (default)
273     soft_ac3    - Sofware-conversion of raw SPDIF packets (model 033 only)
274                   (default = 1)
275     joystick_port - Joystick port address (0 = disable, 1 = auto-detect)
276
277     Module supports autoprobe and multiple chips (max 8).
278     
279   Module snd-cs4231
280   -----------------
281
282     Module for soundcards based on CS4231 ISA chips.
283
284     port        - port # for CS4231 chip
285     mpu_port    - port # for MPU-401 UART (optional), -1 = disable
286     irq         - IRQ # for CS4231 chip
287     mpu_irq     - IRQ # for MPU-401 UART
288     dma1        - first DMA # for CS4231 chip
289     dma2        - second DMA # for CS4231 chip
290     
291     Module supports up to 8 cards. This module does not support autoprobe
292     thus main port must be specified!!! Other ports are optional.
293
294     The power-management is supported.
295     
296   Module snd-cs4232
297   -----------------
298
299     Module for soundcards based on CS4232/CS4232A ISA chips.
300
301     port        - port # for CS4232 chip (PnP setup - 0x534)
302     cport       - control port # for CS4232 chip (PnP setup - 0x120,0x210,0xf00)
303     mpu_port    - port # for MPU-401 UART (PnP setup - 0x300), -1 = disable
304     fm_port     - FM port # for CS4232 chip (PnP setup - 0x388), -1 = disable
305     irq         - IRQ # for CS4232 chip (5,7,9,11,12,15)
306     mpu_irq     - IRQ # for MPU-401 UART (9,11,12,15)
307     dma1        - first DMA # for CS4232 chip (0,1,3)
308     dma2        - second DMA # for Yamaha CS4232 chip (0,1,3), -1 = disable
309     isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)
310     
311     Module supports up to 8 cards. This module does not support autoprobe
312     thus main port must be specified!!! Other ports are optional.
313
314     The power-management is supported.
315     
316   Module snd-cs4236
317   -----------------
318
319     Module for soundcards based on CS4235/CS4236/CS4236B/CS4237B/
320                                    CS4238B/CS4239 ISA chips.
321
322     port        - port # for CS4236 chip (PnP setup - 0x534)
323     cport       - control port # for CS4236 chip (PnP setup - 0x120,0x210,0xf00)
324     mpu_port    - port # for MPU-401 UART (PnP setup - 0x300), -1 = disable
325     fm_port     - FM port # for CS4236 chip (PnP setup - 0x388), -1 = disable
326     irq         - IRQ # for CS4236 chip (5,7,9,11,12,15)
327     mpu_irq     - IRQ # for MPU-401 UART (9,11,12,15)
328     dma1        - first DMA # for CS4236 chip (0,1,3)
329     dma2        - second DMA # for CS4236 chip (0,1,3), -1 = disable
330     isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)
331     
332     Module supports up to 8 cards. This module does not support autoprobe
333     (if ISA PnP is not used) thus main port and control port must be
334     specified!!! Other ports are optional.
335
336     The power-management is supported.
337
338   Module snd-cs4281
339   -----------------
340
341     Module for Cirrus Logic CS4281 soundchip.
342
343     dual_codec  - Secondary codec ID (0 = disable, default)
344
345     Module supports up to 8 cards.
346
347     The power-management is supported.
348
349   Module snd-cs46xx
350   -----------------
351
352     Module for PCI soundcards based on CS4610/CS4612/CS4614/CS4615/CS4622/
353                                        CS4624/CS4630/CS4280 PCI chips.
354
355     external_amp     - Force to enable external amplifer.
356     thinkpad         - Force to enable Thinkpad's CLKRUN control.
357     mmap_valid       - Support OSS mmap mode (default = 0).
358
359     Module supports up to 8 cards and autoprobe.
360     Usually external amp and CLKRUN controls are detected automatically
361     from PCI sub vendor/device ids.  If they don't work, give the options
362     above explicitly.
363
364     The power-management is supported.
365     
366   Module snd-dt019x
367   -----------------
368
369     Module for Diamond Technologies DT-019X / Avance Logic ALS-007 (PnP
370     only)
371
372     port        - Port # (PnP setup)
373     mpu_port    - Port # for MPU-401 (PnP setup)
374     fm_port     - Port # for FM OPL-3 (PnP setup)
375     irq         - IRQ # (PnP setup)
376     mpu_irq     - IRQ # for MPU-401 (PnP setup)
377     dma8        - DMA # (PnP setup)
378
379     Module supports up to 8 cards.  This module is enabled only with
380     ISA PnP support.
381
382   Module snd-dummy
383   ----------------
384
385     Module for the dummy soundcard. This soundcard doesn't do any output
386     or input, but you may use this module for any application which
387     requires a soundcard (like RealPlayer).
388
389   Module snd-emu10k1
390   ------------------
391
392     Module for EMU10K1/EMU10k2 based PCI soundcards.
393                         * Sound Blaster Live!
394                         * Sound Blaster PCI 512
395                         * Emu APS (partially supported)
396                         * Sound Blaster Audigy
397
398     extin   - bitmap of available external inputs for FX8010 (see bellow)
399     extout  - bitmap of available external outputs for FX8010 (see bellow)
400     seq_ports - allocated sequencer ports (4 by default)
401     max_synth_voices - limit of voices used for wavetable (64 by default)
402     max_buffer_size  - specifies the maximum size of wavetable/pcm buffers
403                        given in MB unit.  Default value is 128.
404     enable_ir - enable IR
405
406     Module supports up to 8 cards and autoprobe.
407
408     Input & Output configurations                       [extin/extout]
409         * Creative Card wo/Digital out                  [0x0003/0x1f03]
410         * Creative Card w/Digital out                   [0x0003/0x1f0f]
411         * Creative Card w/Digital CD in                 [0x000f/0x1f0f]
412         * Creative Card wo/Digital out + LiveDrive      [0x3fc3/0x1fc3]
413         * Creative Card w/Digital out + LiveDrive       [0x3fc3/0x1fcf]
414         * Creative Card w/Digital CD in + LiveDrive     [0x3fcf/0x1fcf]
415         * Creative Card wo/Digital out + Digital I/O 2  [0x0fc3/0x1f0f]
416         * Creative Card w/Digital out + Digital I/O 2   [0x0fc3/0x1f0f]
417         * Creative Card w/Digital CD in + Digital I/O 2 [0x0fcf/0x1f0f]
418         * Creative Card 5.1/w Digital out + LiveDrive   [0x3fc3/0x1fff]
419         * Creative Card all ins and outs                [0x3fff/0x1fff]
420     
421   Module snd-ens1370
422   ------------------
423
424     Module for Ensoniq AudioPCI ES1370 PCI soundcards.
425                         * SoundBlaster PCI 64
426                         * SoundBlaster PCI 128
427
428     joystick            - Enable joystick (default off)
429
430     Module supports up to 8 cards and autoprobe.
431     
432   Module snd-ens1371
433   ------------------
434
435     Module for Ensoniq AudioPCI ES1371 PCI soundcards.
436                         * SoundBlaster PCI 64
437                         * SoundBlaster PCI 128
438                         * SoundBlaster Vibra PCI
439
440     joystick_port       - port # for joystick (0x200,0x208,0x210,0x218),
441                           0 = disable (default), 1 = auto-detect
442
443     Module supports up to 8 cards and autoprobe.
444     
445   Module snd-es968
446   ----------------
447
448     Module for soundcards based on ESS ES968 chip (PnP only).
449
450     port        - port # for ES968 (SB8) chip (PnP setup)
451     irq         - IRQ # for ES968 (SB8) chip (PnP setup)
452     dma1        - DMA # for ES968 (SB8) chip (PnP setup)
453     
454     Module supports up to 8 cards, PnP and autoprobe.
455     
456   Module snd-es1688
457   -----------------
458
459     Module for ESS AudioDrive ES-1688 and ES-688 soundcards.
460
461     port        - port # for ES-1688 chip (0x220,0x240,0x260)
462     mpu_port    - port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default)
463     irq         - IRQ # for ES-1688 chip (5,7,9,10)
464     mpu_irq     - IRQ # for MPU-401 port (5,7,9,10)
465     dma8        - DMA # for ES-1688 chip (0,1,3)
466
467     Module supports up to 8 cards and autoprobe (without MPU-401 port).
468
469   Module snd-es18xx
470   -----------------
471
472     Module for ESS AudioDrive ES-18xx soundcards.
473
474     port        - port # for ES-18xx chip (0x220,0x240,0x260)
475     mpu_port    - port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default)
476     fm_port     - port # for FM (optional, not used)
477     irq         - IRQ # for ES-18xx chip (5,7,9,10)
478     dma1        - first DMA # for ES-18xx chip (0,1,3)
479     dma2        - first DMA # for ES-18xx chip (0,1,3)
480     isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)
481
482     Module supports up to 8 cards ISA PnP and autoprobe (without MPU-401 port
483     if native ISA PnP routines are not used).
484     When dma2 is equal with dma1, the driver works as half-duplex.
485
486     The power-management is supported.
487
488   Module snd-es1938
489   -----------------
490
491     Module for soundcards based on ESS Solo-1 (ES1938,ES1946) chips.
492
493     Module supports up to 8 cards and autoprobe.
494
495   Module snd-es1968
496   -----------------
497
498     Module for soundcards based on ESS Maestro-1/2/2E (ES1968/ES1978) chips.
499
500     total_bufsize       - total buffer size in kB (1-4096kB)
501     pcm_substreams_p    - playback channels (1-8, default=2)
502     pcm_substreams_c    - capture channels (1-8, default=0)
503     clock               - clock (0 = auto-detection)
504     use_pm              - support the power-management (0 = off, 1 = on,
505                           2 = auto (default))
506     enable_mpu          - enable MPU401 (0 = off, 1 = on, 2 = auto (default))
507     joystick            - enable joystick (default off)       
508
509     Module supports up to 8 cards and autoprobe.
510
511     The power-management is supported.
512
513   Module snd-fm801
514   ----------------
515
516     Module for ForteMedia FM801 based PCI soundcards.
517
518     Module supports up to 8 cards and autoprobe.
519     
520   Module snd-gusclassic
521   ---------------------
522
523     Module for Gravis UltraSound Classic soundcard.
524
525     port        - port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
526     irq         - IRQ # for GF1 chip (3,5,9,11,12,15)
527     dma1        - DMA # for GF1 chip (1,3,5,6,7)
528     dma2        - DMA # for GF1 chip (1,3,5,6,7,-1=disable)
529     joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
530     voices      - GF1 voices limit (14-32)
531     pcm_voices  - reserved PCM voices
532
533     Module supports up to 8 cards and autoprobe.
534
535   Module snd-gusextreme
536   ---------------------
537
538     Module for Gravis UltraSound Extreme (Synergy ViperMax) soundcard.
539
540     port        - port # for ES-1688 chip (0x220,0x230,0x240,0x250,0x260)
541     gf1_port    - port # for GF1 chip (0x210,0x220,0x230,0x240,0x250,0x260,0x270)
542     mpu_port    - port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable
543     irq         - IRQ # for ES-1688 chip (5,7,9,10)
544     gf1_irq     - IRQ # for GF1 chip (3,5,9,11,12,15)
545     mpu_irq     - IRQ # for MPU-401 port (5,7,9,10)
546     dma8        - DMA # for ES-1688 chip (0,1,3)
547     dma1        - DMA # for GF1 chip (1,3,5,6,7)
548     joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
549     voices      - GF1 voices limit (14-32)
550     pcm_voices  - reserved PCM voices
551
552     Module supports up to 8 cards and autoprobe (without MPU-401 port).
553
554   Module snd-gusmax
555   -----------------
556
557     Module for Gravis UltraSound MAX soundcard.
558
559     port        - port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
560     irq         - IRQ # for GF1 chip (3,5,9,11,12,15)
561     dma1        - DMA # for GF1 chip (1,3,5,6,7)
562     dma2        - DMA # for GF1 chip (1,3,5,6,7,-1=disable)
563     joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
564     voices      - GF1 voices limit (14-32)
565     pcm_voices  - reserved PCM voices
566
567     Module supports up to 8 cards and autoprobe.
568     
569   Module snd-hdsp
570   ---------------
571
572     Module for RME Hammerfall DSP audio interface(s)
573
574     precise_ptr       - Enable precise pointer (doesn't work reliably).
575                         (default = 0)
576     line_outs_monitor - Send all input and playback streams to line outs
577                         by default. (default = 0)
578     force_firmware    - Force a reload of the I/O box firmware
579                         (default = 0)
580
581     Module supports up to 8 cards.
582
583     Note: you need to load the firmware via hdsploader utility included
584           in alsa-tools and alsa-firmware packages.
585
586     Note: snd-page-alloc module does the job which snd-hammerfall-mem
587           module did formerly.  It will allocate the buffers in advance
588           when any HDSP cards are found.  To make the buffer
589           allocation sure, load snd-page-alloc module in the early
590           stage of boot sequence.
591
592   Module snd-ice1712
593   ------------------
594
595     Module for Envy24 (ICE1712) based PCI soundcards.
596                         * MidiMan M Audio Delta 1010
597                         * MidiMan M Audio Delta 1010LT
598                         * MidiMan M Audio Delta DiO 2496
599                         * MidiMan M Audio Delta 66
600                         * MidiMan M Audio Delta 44
601                         * MidiMan M Audio Delta 410
602                         * MidiMan M Audio Audiophile 2496
603                         * TerraTec EWS 88MT
604                         * TerraTec EWS 88D
605                         * TerraTec EWX 24/96
606                         * TerraTec DMX 6Fire
607                         * Hoontech SoundTrack DSP 24
608                         * Hoontech SoundTrack DSP 24 Value
609                         * Hoontech SoundTrack DSP 24 Media 7.1
610                         * Digigram VX442
611
612     omni        - Omni I/O support for MidiMan M-Audio Delta44/66
613     cs8427_timeout - reset timeout for the CS8427 chip (S/PDIF transciever)
614                      in msec resolution, default value is 500 (0.5 sec)
615
616     Module supports up to 8 cards and autoprobe. Note: The consumer part
617     is not used with all Envy24 based cards (for example in the MidiMan Delta
618     serie).
619
620   Module snd-ice1724
621   ------------------
622
623     Module for Envy24HT (VT/ICE1724) based PCI soundcards.
624                         * MidiMan M Audio Revolution 7.1
625                         * AMP Ltd AUDIO2000
626                         * TerraTec Aureon Sky-5.1, Space-7.1
627
628     Module supports up to 8 cards and autoprobe.
629
630   Module snd-intel8x0
631   -------------------
632
633     Module for AC'97 motherboards from Intel and compatibles.
634                         * Intel i810/810E, i815, i820, i830, i84x, MX440
635                         * SiS 7012 (SiS 735)
636                         * NVidia NForce, NForce2
637                         * AMD AMD768, AMD8111
638                         * ALi m5455
639
640     ac97_clock    - AC'97 codec clock base (0 = auto-detect)
641     joystick      - Enable joystick (default off)
642     mpu_port      - MPU401 port # (0 = disabled, 0x330,0x300)
643     ac97_quirk    - AC'97 workaround for strange hardware (-1 = default)
644                     -1 = default, don't override
645                      0 = disable
646                      1 = use headphone control as master
647                      2 = swap headphone and master controls
648                      3 = for AD1985, turn on OMS bit and use headphone
649                      4 = for ALC65x, turn on the jack sense mode
650
651     Module supports autoprobe and multiple bus-master chips (max 8).
652
653     Note: the latest driver supports auto-detection of chip clock.
654     if you still encounter too fast playback, specify the clock
655     explicitly via the module option "ac97_clock=41194".
656
657     The joystick and MPU-401 are supported only certain hardwares.
658     MPU401 is experimental,  It doesn't work perfectly.
659
660     The ac97_quirk option is used to enable/override the workaround
661     for specific devices.  Some hardware have swapped output pins
662     between Master and Headphone, or Surround.  The driver provides
663     the auto-detection of known problematic devices, but some might
664     be unknown or wrongly detected.  In such a case, pass the proper
665     value with this option.
666
667     The power-management is supported.
668     
669   Module snd-intel8x0m
670   --------------------
671
672     Module for Intel ICH (i8x0) chipset MC97 modems.
673
674     ac97_clock    - AC'97 codec clock base (0 = auto-detect)
675
676     This module supports up to 8 cards and autoprobe.
677
678   Module snd-interwave
679   --------------------
680
681     Module for Gravis UltraSound PnP, Dynasonic 3-D/Pro, STB Sound Rage 32
682     and other soundcards based on AMD InterWave (tm) chip.
683   
684     port        - port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260)
685     irq         - IRQ # for InterWave chip (3,5,9,11,12,15)
686     dma1        - DMA # for InterWave chip (0,1,3,5,6,7)
687     dma2        - DMA # for InterWave chip (0,1,3,5,6,7,-1=disable)
688     joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
689     midi        - 1 = MIDI UART enable, 0 = MIDI UART disable (default)
690     pcm_voices  - reserved PCM voices for the synthesizer (default 2)
691     effect      - 1 = InterWave effects enable (default 0);
692                   requires 8 voices
693
694     Module supports up to 8 cards, autoprobe and ISA PnP.
695
696   Module snd-interwave-stb
697   ------------------------
698
699     Module for UltraSound 32-Pro (soundcard from STB used by Compaq)
700     and other soundcards based on AMD InterWave (tm) chip with TEA6330T
701     circuit for extended control of bass, treble and master volume.
702   
703     port        - port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260)
704     port_tc     - tone control (i2c bus) port # for TEA6330T chip (0x350,0x360,0x370,0x380)
705     irq         - IRQ # for InterWave chip (3,5,9,11,12,15)
706     dma1        - DMA # for InterWave chip (0,1,3,5,6,7)
707     dma2        - DMA # for InterWave chip (0,1,3,5,6,7,-1=disable)
708     joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
709     midi        - 1 = MIDI UART enable, 0 = MIDI UART disable (default)
710     pcm_voices  - reserved PCM voices for the synthesizer (default 2)
711     effect      - 1 = InterWave effects enable (default 0);
712                   requires 8 voices
713
714     Module supports up to 8 cards, autoprobe and ISA PnP.
715
716   Module snd-korg1212
717   -------------------
718
719     Module for Korg 1212 IO PCI card
720
721     Module supports up to 8 cards.
722
723   Module snd-maestro3
724   -------------------
725
726     Module for Allegro/Maestro3 chips
727
728     external_amp     - enable external amp (enabled by default)
729     amp_gpio         - GPIO pin number for external amp (0-15) or
730                        -1 for default pin (8 for allegro, 1 for
731                        others) 
732
733     Module supports autoprobe and multiple chips (max 8).
734
735     Note: the binding of amplifier is dependent on hardware.
736     If there is no sound even though all channels are unmuted, try to
737     specify other gpio connection via amp_gpio option. 
738     For example, a Panasonic notebook might need "amp_gpio=0x0d"
739     option.
740
741     The power-management is supported.
742
743   Module snd-mixart
744   -----------------
745
746     Module for Digigram miXart8 soundcards.
747
748     Module supports multiple cards.
749     Note: One miXart8 board will be represented as 4 alsa cards.
750           See MIXART.txt for details.
751
752   Module snd-mpu401
753   -----------------
754
755     Module for MPU-401 UART devices.
756
757     port        - port number or -1 (disable)
758     irq         - IRQ number or -1 (disable)
759     acpipnp     - ACPI PnP detection - 0 = disable, 1 = enable (default)
760
761     Module supports multiple devices (max 8) and ACPI PnP.  If PnP is not
762     used (or ACPI not enabled), port and irq must be specified.
763     
764   Module snd-mtpav
765   ----------------
766
767     Module for MOTU MidiTimePiece AV multiport MIDI (on the parallel
768     port).
769
770     port        - I/O port # for MTPAV (0x378,0x278, default=0x378)
771     irq         - IRQ # for MTPAV (7,5, default=7)
772     hwports     - number of supported hardware ports, default=8.
773     
774     Module supports only 1 card.  This module has no enable option.
775
776   Module snd-nm256
777   ----------------
778
779     Module for NeoMagic NM256AV/ZX chips
780
781     playback_bufsize - max playback frame size in kB (4-128kB)
782     capture_bufsize  - max capture frame size in kB (4-128kB)
783     force_ac97       - 0 or 1 (disabled by default)
784     buffer_top       - specify buffer top address
785     use_cache        - 0 or 1 (disabled by default)
786     vaio_hack        - alias buffer_top=0x25a800
787
788     Module supports autoprobe and multiple chips (max 8).
789
790     Note: on some notebooks the buffer address cannot be detected
791     automatically, or causes hang-up during initialization.
792     In such a case, specify the buffer top address explicity via
793     buffer_top option.
794     For example,
795       Sony F250: buffer_top=0x25a800
796       Sony F270: buffer_top=0x272800
797     The driver supports only ac97 codec.  It's possible to force
798     to initialize/use ac97 although it's not detected.  In such a
799     case, use force_ac97=1 option.
800
801     The power-management is supported.
802
803   Module snd-opl3sa2
804   ------------------
805
806     Module for Yamaha OPL3-SA2/SA3 soundcards.
807
808     port        - control port # for OPL3-SA chip (0x370)
809     sb_port     - SB port # for OPL3-SA chip (0x220,0x240)
810     wss_port    - WSS port # for OPL3-SA chip (0x530,0xe80,0xf40,0x604)
811     midi_port   - port # for MPU-401 UART (0x300,0x330), -1 = disable
812     fm_port     - FM port # for OPL3-SA chip (0x388), -1 = disable
813     irq         - IRQ # for OPL3-SA chip (5,7,9,10)
814     dma1        - first DMA # for Yamaha OPL3-SA chip (0,1,3)
815     dma2        - second DMA # for Yamaha OPL3-SA chip (0,1,3), -1 = disable
816     isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)
817     
818     Module supports up to 8 cards and ISA PnP. This module does not support
819     autoprobe (if ISA PnP is not used) thus all ports must be specified!!!
820     
821     The power-management is supported.
822
823   Module snd-opti92x-ad1848
824   -------------------------
825
826     Module for soundcards based on OPTi 82c92x and Analog Devices AD1848 chips.
827     Module works with OAK Mozart cards as well.
828     
829     port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
830     mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
831     fm_port   - port # for OPL3 device (0x388)
832     irq       - IRQ # for WSS chip (5,7,9,10,11)
833     mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
834     dma1      - first DMA # for WSS chip (0,1,3)
835
836     This module supports only one card, autoprobe and PnP.
837
838   Module snd-opti92x-cs4231
839   -------------------------
840
841     Module for soundcards based on OPTi 82c92x and Crystal CS4231 chips.
842     
843     port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
844     mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
845     fm_port   - port # for OPL3 device (0x388)
846     irq       - IRQ # for WSS chip (5,7,9,10,11)
847     mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
848     dma1      - first DMA # for WSS chip (0,1,3)
849     dma2      - second DMA # for WSS chip (0,1,3)
850
851     This module supports only one card, autoprobe and PnP.
852
853   Module snd-opti93x
854   ------------------
855
856     Module for soundcards based on OPTi 82c93x chips.
857     
858     port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
859     mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
860     fm_port   - port # for OPL3 device (0x388)
861     irq       - IRQ # for WSS chip (5,7,9,10,11)
862     mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
863     dma1      - first DMA # for WSS chip (0,1,3)
864     dma2      - second DMA # for WSS chip (0,1,3)
865
866     This module supports only one card, autoprobe and PnP.
867
868   Module snd-powermac (on ppc only)
869   ---------------------------------
870
871     Module for PowerMac, iMac and iBook on-board soundchips
872
873     enable_beep     - enable beep using PCM (enabled as default)
874
875     Module supports autoprobe a chip.
876
877     Note: the driver may have problems regarding endianess.
878
879     The power-management is supported.
880
881   Module snd-rme32
882   ----------------
883
884     Module for RME Digi32, Digi32 Pro and Digi32/8 (Sek'd Prodif32, 
885     Prodif96 and Prodif Gold) soundcards.
886
887     Module supports up to 8 cards.
888
889   Module snd-rme96
890   ----------------
891
892     Module for RME Digi96, Digi96/8 and Digi96/8 PRO/PAD/PST soundcards.
893
894     Module supports up to 8 cards.
895
896   Module snd-rme9652
897   ------------------
898
899     Module for RME Digi9652 (Hammerfall, Hammerfall-Light) soundcards.
900
901     precise_ptr - Enable precise pointer (doesn't work reliably).
902                   (default = 0)
903
904     Module supports up to 8 cards.
905
906     Note: snd-page-alloc module does the job which snd-hammerfall-mem
907           module did formerly.  It will allocate the buffers in advance
908           when any RME9652 cards are found.  To make the buffer
909           allocation sure, load snd-page-alloc module in the early
910           stage of boot sequence.
911
912   Module snd-sa11xx-uda1341 (on arm only)
913   ---------------------------------------
914
915     Module for Philips UDA1341TS on Compaq iPAQ H3600 soundcard.
916
917     Module supports only one card.
918     Module has no enable and index options.
919
920   Module snd-sb8
921   --------------
922
923     Module for 8-bit SoundBlaster cards: SoundBlaster 1.0,
924                                          SoundBlaster 2.0,
925                                          SoundBlaster Pro
926
927     port        - port # for SB DSP chip (0x220,0x240,0x260)
928     irq         - IRQ # for SB DSP chip (5,7,9,10)
929     dma8        - DMA # for SB DSP chip (1,3)
930
931     Module supports up to 8 cards and autoprobe.
932     
933   Module snd-sb16 and snd-sbawe
934   -----------------------------
935
936     Module for 16-bit SoundBlaster cards: SoundBlaster 16 (PnP),
937                                           SoundBlaster AWE 32 (PnP),
938                                           SoundBlaster AWE 64 PnP
939
940     port        - port # for SB DSP 4.x chip (0x220,0x240,0x260)
941     mpu_port    - port # for MPU-401 UART (0x300,0x330), -1 = disable
942     awe_port    - base port # for EMU8000 synthesizer (0x620,0x640,0x660)
943                    (snd-sbawe module only)
944     irq         - IRQ # for SB DSP 4.x chip (5,7,9,10)
945     dma8        - 8-bit DMA # for SB DSP 4.x chip (0,1,3)
946     dma16       - 16-bit DMA # for SB DSP 4.x chip (5,6,7)
947     mic_agc     - Mic Auto-Gain-Control - 0 = disable, 1 = enable (default)
948     csp         - ASP/CSP chip support - 0 = disable (default), 1 = enable
949     isapnp      - ISA PnP detection - 0 = disable, 1 = enable (default)
950     
951     Module supports up to 8 cards, autoprobe and ISA PnP.
952
953     Note: To use Vibra16X cards in 16-bit half duplex mode, you must
954           disable 16bit DMA with dma16 = -1 module parameter.
955           Also, all Sound Blaster 16 type cards can operate in 16-bit
956           half duplex mode through 8-bit DMA channel by disabling their
957           16-bit DMA channel.
958     
959   Module snd-sgalaxy
960   ------------------
961
962     Module for Aztech Sound Galaxy soundcard.
963
964     sbport      - Port # for SB16 interface (0x220,0x240)
965     wssport     - Port # for WSS interface (0x530,0xe80,0xf40,0x604)
966     irq         - IRQ # (7,9,10,11)
967     dma1        - DMA #
968
969     Module supports up to 8 cards.
970
971   Module snd-sscape
972   -----------------
973
974     Module for ENSONIQ SoundScape PnP cards.
975
976     port        - Port # (PnP setup)
977     irq         - IRQ # (PnP setup)
978     mpu_irq     - MPU-401 IRQ # (PnP setup)
979     dma         - DMA # (PnP setup)
980
981     Module supports up to 8 cards.  ISA PnP must be enabled.
982     You need sscape_ctl tool in alsa-tools package for loading
983     the microcode.
984
985   Module snd-sun-amd7930 (on sparc only)
986   --------------------------------------
987
988     Module for AMD7930 sound chips found on Sparcs.
989
990     Module supports up to 8 cards.
991
992   Module snd-sun-cs4231 (on sparc only)
993   -------------------------------------
994
995     Module for CS4231 sound chips found on Sparcs.
996
997     Module supports up to 8 cards.
998
999   Module snd-wavefront
1000   --------------------
1001
1002     Module for Turtle Beach Maui, Tropez and Tropez+ soundcards.
1003
1004     cs4232_pcm_port - Port # for CS4232 PCM interface.
1005     cs4232_pcm_irq  - IRQ # for CS4232 PCM interface (5,7,9,11,12,15).
1006     cs4232_mpu_port - Port # for CS4232 MPU-401 interface.
1007     cs4232_mpu_irq  - IRQ # for CS4232 MPU-401 interface (9,11,12,15).
1008     use_cs4232_midi - Use CS4232 MPU-401 interface
1009                       (inaccessibly located inside your computer)
1010     ics2115_port    - Port # for ICS2115
1011     ics2115_irq     - IRQ # for ICS2115
1012     fm_port         - FM OPL-3 Port #
1013     dma1            - DMA1 # for CS4232 PCM interface.
1014     dma2            - DMA2 # for CS4232 PCM interface.
1015     isapnp          - ISA PnP detection - 0 = disable, 1 = enable (default)
1016
1017     Module supports up to 8 cards and ISA PnP.
1018
1019   Module snd-sonicvibes
1020   ---------------------
1021
1022     Module for S3 SonicVibes PCI soundcards.
1023                         * PINE Schubert 32 PCI
1024
1025     reverb    - Reverb Enable - 1 = enable, 0 = disable (default)
1026                   - SoundCard must have onboard SRAM for this.
1027     mge       - Mic Gain Enable - 1 = enable, 0 = disable (default)
1028     
1029     Module supports up to 8 cards and autoprobe.
1030
1031   Module snd-serial-u16550
1032   ------------------------
1033
1034     Module for UART16550A serial MIDI ports.
1035
1036     port        - port # for UART16550A chip
1037     irq         - IRQ # for UART16550A chip, -1 = poll mode
1038     speed       - speed in bauds (9600,19200,38400,57600,115200)
1039                   38400 = default
1040     base        - base for divisor in bauds (57600,115200,230400,460800)
1041                   115200 = default
1042     outs        - number of MIDI ports in a serial port (1-4)
1043                   1 = default
1044     adaptor     - Type of adaptor.
1045                   0 = Soundcanvas, 1 = MS-124T, 2 = MS-124W S/A,
1046                   3 = MS-124W M/B, 4 = Generic
1047     
1048     Module supports up to 8 cards. This module does not support autoprobe
1049     thus the main port must be specified!!! Other options are optional.
1050
1051   Module snd-trident
1052   ------------------
1053
1054     Module for Trident 4DWave DX/NX soundcards.
1055                         * Best Union  Miss Melody 4DWave PCI
1056                         * HIS  4DWave PCI
1057                         * Warpspeed  ONSpeed 4DWave PCI
1058                         * AzTech  PCI 64-Q3D
1059                         * Addonics  SV 750
1060                         * CHIC  True Sound 4Dwave
1061                         * Shark  Predator4D-PCI
1062                         * Jaton  SonicWave 4D
1063
1064     pcm_channels   - max channels (voices) reserved for PCM
1065     wavetable_size - max wavetable size in kB (4-?kb)
1066
1067     Module supports up to 8 cards and autoprobe.
1068
1069     The power-management is supported.
1070
1071   Module snd-usb-audio
1072   --------------------
1073
1074     Module for USB audio and USB MIDI devices.
1075
1076     vid             - Vendor ID for the device (optional)
1077     pid             - Product ID for the device (optional)
1078
1079     This module supports up to 8 cards, autoprobe and hotplugging.
1080
1081   Module snd-via82xx
1082   ------------------
1083
1084     Module for AC'97 motherboards based on VIA 82C686A/686B, 8233,
1085     8233A, 8233C, 8235 (south) bridge.
1086
1087     mpu_port    - 0x300,0x310,0x320,0x330, otherwise obtain BIOS setup
1088                   [VIA686A/686B only]
1089     joystick    - Enable joystick (default off) [VIA686A/686B only]
1090     ac97_clock  - AC'97 codec clock base (default 48000Hz)
1091     dxs_support - support DXS channels,
1092                   0 = auto (defalut), 1 = enable, 2 = disable,
1093                   3 = 48k only, 4 = no VRA
1094                   [VIA8233/C,8235 only]
1095     ac97_quirk  - AC'97 workaround for strange hardware
1096                   See the description of intel8x0 module for details.
1097
1098     Module supports autoprobe and multiple bus-master chips (max 8).
1099
1100     Note: on some SMP motherboards like MSI 694D the interrupts might
1101           not be generated properly.  In such a case, please try to
1102           set the SMP (or MPS) version on BIOS to 1.1 instead of
1103           default value 1.4.  Then the interrupt number will be
1104           assigned under 15. You might also upgrade your BIOS.
1105     
1106     Note: VIA8233/5 (not VIA8233A) can support DXS (direct sound)
1107           channels as the first PCM.  On these channels, up to 4
1108           streams can be played at the same time.
1109           As default (dxs_support = 0), 48k fixed rate is chosen
1110           except for the known devices since the output is often
1111           noisy except for 48k on some mother boards due to the
1112           bug of BIOS.
1113           Please try once dxs_support=1 and if it works on other
1114           sample rates (e.g. 44.1kHz of mp3 playback), please let us
1115           know the PCI subsystem vendor/device id's (output of
1116           "lspci -nv").
1117           If it doesn't work, try dxs_support=4.  If it still doesn't
1118           work and the default setting is ok, dxs_support=3 is the
1119           right choice.  If the default setting doesn't work at all,
1120           try dxs_support=2 to disable the DXS channels.
1121           In any cases, please let us know the result and the
1122           subsystem vendor/device ids.
1123
1124     Note: for the MPU401 on VIA823x, use snd-mpu401 driver
1125           additonally.  The mpu_port option is for VIA686 chips only.
1126
1127   Module snd-virmidi
1128   ------------------
1129
1130     Module for virtual rawmidi devices.
1131     This module creates virtual rawmidi devices which communicate
1132     to the corresponding ALSA sequencer ports.
1133
1134     midi_devs   - MIDI devices # (1-8, default=4)
1135     
1136     Module supports up to 8 cards.
1137
1138   Module snd-vx222
1139   ----------------
1140
1141     Module for Digigram VX-Pocket VX222, V222 v2 and Mic cards.
1142
1143     mic         - Enable Microphone on V222 Mic (NYI)
1144     ibl         - Capture IBL size. (default = 0, minimum size)
1145
1146     Module supports up to 8 cards.
1147
1148     For loading the firmware, use vxloader utility in alsa-tools
1149     and alsa-firmware packages.  You can load the firmware automatically
1150     by adding the following to /etc/modprobe.conf
1151
1152         install snd-vx222 /sbin/modprobe --first-time -i snd-vx222 && /usr/bin/vxloader
1153
1154     (for 2.2/2.4 kernels, add "post-install /usr/bin/vxloader" to
1155      /etc/modules.conf, instead.)
1156     IBL size defines the interrupts period for PCM.  The smaller size
1157     gives smaller latency but leads to more CPU consumption, too.
1158     The size is usually aligned to 126.  As default (=0), the smallest
1159     size is chosen.  The possible IBL values can be found in
1160     /proc/asound/cardX/vx-status proc file.
1161
1162   Module snd-vxpocket
1163   -------------------
1164
1165     Module for Digigram VX-Pocket VX2 PCMCIA card.
1166
1167     irq_mask - IRQ bitmask, specifies the available IRQs as bits
1168                (default = 0xffff, all available)
1169     irq_list - List of available interrupts (default = -1, not specified)
1170                4 numbers must be given (if specified).
1171     ibl      - Capture IBL size. (default = 0, minimum size)
1172
1173     Module supports up to 8 cards.  The module is compiled only when
1174     PCMCIA is supported on kernel.
1175
1176     To activate the driver via the card manager, you'll need to set
1177     up /etc/pcmcia/vxpocket.conf.  See the sound/pcmcia/vx/vxpocket.c.
1178
1179     For loading the firmware, use vxloader utility in alsa-tools
1180     and alsa-firmware packages.
1181
1182     The irq_mask and irq_list are provided to avoid allocation of
1183     specific IRQs.  Usually you don't need to specify them.
1184
1185     About capture IBL, see the description of snd-vx222 module.
1186
1187     Note: the driver is build only when CONFIG_ISA is set.
1188     
1189   Module snd-vxp440
1190   -----------------
1191
1192     Module for Digigram VX-Pocket 440 PCMCIA card.
1193
1194     irq_mask - IRQ bitmask, specifies the available IRQs as bits
1195     irq_list - List of available interrupts (default = -1, not specified)
1196                4 numbers must be given (if specified).
1197     ibl      - Capture IBL size. (default = 0, minimum size)
1198
1199     Module supports up to 8 cards.  The module is compiled only when
1200     PCMCIA is supported on kernel.
1201
1202     To activate the driver via the card manager, you'll need to set
1203     up /etc/pcmcia/vxp440.conf.  See the sound/pcmcia/vx/vxp440.c.
1204
1205     For loading the firmware, use vxloader utility in alsa-tools
1206     and alsa-firmware packages.
1207
1208     The irq_mask and irq_list are provided to avoid allocation of
1209     specific IRQs.  Usually you don't need to specify them.
1210
1211     About capture IBL, see the description of snd-vx222 module.
1212
1213     Note: the driver is build only when CONFIG_ISA is set.
1214     
1215   Module snd-ymfpci
1216   -----------------
1217
1218     Module for Yamaha PCI chips (YMF72x, YMF74x & YMF75x).
1219
1220     mpu_port      - 0x300,0x330,0x332,0x334, 0 (disable) by default,
1221                     1 (auto-detect for YMF744/754 only)
1222     fm_port       - 0x388,0x398,0x3a0,0x3a8, 0 (disable) by default
1223                     1 (auto-detect for YMF744/754 only)
1224     joystick_port - 0x201,0x202,0x204,0x205, 0 (disable) by default,
1225                     1 (auto-detect)
1226     rear_switch   - enable shared rear/line-in switch (bool)
1227
1228     Module supports autoprobe and multiple chips (max 8).
1229
1230     The power-management is supported.
1231
1232   Module snd-pdaudiocf
1233   --------------------
1234
1235     Module for Sound Core PDAudioCF soundcard.
1236
1237     irq_mask      - IRQ mask (PCMCIA type)
1238     irq_list      - List of available interrupts for this soundcard
1239
1240     Note: the driver is build only when CONFIG_ISA is set.
1241
1242
1243 Configuring Non-ISAPNP Cards
1244 ============================
1245
1246 When the kernel is configured with ISA-PnP support, the modules
1247 supporting the isapnp cards will have module options "isapnp".
1248 If this option is set, *only* the ISA-PnP devices will be probed.
1249 For probing the non ISA-PnP cards, you have to pass "isapnp=0" option
1250 together with the proper i/o and irq configuration.
1251
1252 When the kernel is configured without ISA-PnP support, isapnp option
1253 will be not built in.
1254
1255
1256 Module Autoloading Support
1257 ==========================
1258
1259 The ALSA drivers can be loaded automatically on demand by defining
1260 module aliases.  The string 'snd-card-%1' is requested for ALSA native
1261 devices where %i is soundcard number from zero to seven.
1262
1263 To auto-load an ALSA driver for OSS services, define the string
1264 'sound-slot-%i' where %i means the slot number for OSS, which
1265 corresponds to the card index of ALSA.  Usually, define this
1266 as the the same card module.
1267
1268 An example configuration for a single emu10k1 card is like below:
1269 ----- /etc/modprobe.conf
1270 alias snd-card-0 snd-emu10k1
1271 alias sound-slot-0 snd-emu10k1
1272 ----- /etc/modprobe.conf
1273
1274 The available number of auto-loaded soundcards depends on the module
1275 option "cards_limit" of snd module.  As default it's set to 1.
1276 To enable the auto-loading of multiple cards, specify the number of
1277 soundcards in that option.
1278
1279 When multiple cards are available, it'd better to specify the index
1280 number for each card via module option, too, so that the order of
1281 cards is kept consistent.
1282
1283 An example configuration for two soundcards is like below:
1284
1285 ----- /etc/modprobe.conf
1286 # ALSA portion
1287 options snd cards_limit=2
1288 alias snd-card-0 snd-interwave
1289 alias snd-card-1 snd-ens1371
1290 options snd-interwave index=0
1291 options snd-ens1371 index=1
1292 # OSS/Free portion
1293 alias sound-slot-0 snd-interwave
1294 alias sound-slot-1 snd-ens1371
1295 ----- /etc/moprobe.conf
1296
1297 In this example, the interwave card is always loaded as the first card
1298 (index 0) and ens1371 as the second (index 1).
1299
1300
1301 ALSA PCM devices to OSS devices mapping
1302 =======================================
1303
1304 /dev/snd/pcmC0D0  -> /dev/audio0 (/dev/audio) -> minor 4
1305 /dev/snd/pcmC0D0  -> /dev/dsp0 (/dev/dsp)     -> minor 3
1306 /dev/snd/pcmC0D1  -> /dev/adsp0 (/dev/adsp)   -> minor 12
1307 /dev/snd/pcmC1D0  -> /dev/audio1              -> minor 4+16 = 20
1308 /dev/snd/pcmC1D0  -> /dev/dsp1                -> minor 3+16 = 19
1309 /dev/snd/pcmC1D1  -> /dev/adsp1               -> minor 12+16 = 28
1310 /dev/snd/pcmC2D0  -> /dev/audio2              -> minor 4+32 = 36
1311 /dev/snd/pcmC2D0  -> /dev/dsp2                -> minor 3+32 = 39
1312 /dev/snd/pcmC2D1  -> /dev/adsp2               -> minor 12+32 = 44
1313
1314 The first number from /dev/snd/pcmC{X}D{Y} expression means soundcard number
1315 and second means device number.
1316 Please note that the device mapping above may be varied via the module
1317 options of snd-pcm-oss module.
1318
1319
1320 DEVFS support
1321 =============
1322
1323 The ALSA driver fully supports the devfs extension.
1324 You should add lines below to your devfsd.conf file:
1325
1326 LOOKUP snd MODLOAD ACTION snd
1327 REGISTER ^sound/.* PERMISSIONS root.audio 660
1328 REGISTER ^snd/.* PERMISSIONS root.audio 660
1329
1330 Warning: These lines assume that you have the audio group in your system.
1331          Otherwise replace audio word with another group name (root for
1332          example).
1333
1334
1335 Proc interfaces (/proc/asound)
1336 ==============================
1337
1338 /proc/asound/card#/pcm#[cp]/oss
1339 -------------------------------
1340   String "erase" - erase all additional informations about OSS applications
1341   String "<app_name> <fragments> <fragment_size> [<options>]"
1342
1343    <app_name> - name of application with (higher priority) or without path
1344    <fragments> - number of fragments or zero if auto
1345    <fragment_size> - size of fragment in bytes or zero if auto
1346    <options> - optional parameters
1347           - disable   the application tries to open a pcm device for
1348                       this channel but does not want to use it.
1349                       (Cause a bug or mmap needs)
1350                       It's good for Quake etc...
1351           - direct    don't use plugins
1352           - block     force block mode (rvplayer)
1353           - non-block force non-block mode
1354           - whole-frag  write only whole fragments (optimization affecting
1355                         playback only)
1356           - no-silence  do not fill silence ahead to avoid clicks
1357
1358   Example: echo "x11amp 128 16384" > /proc/asound/card0/pcm0p/oss
1359            echo "squake 0 0 disable" > /proc/asound/card0/pcm0c/oss
1360            echo "rvplayer 0 0 block" > /proc/asound/card0/pcm0p/oss
1361
1362
1363 Links
1364 =====
1365
1366   ALSA project homepage
1367        http://www.alsa-project.org
1368