About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / sound / alsa / ALSA-Configuration.txt




Custom Search

Based on kernel version 2.6.33. Page generated on 2010-02-24 15:37 EST.

1	
2			Advanced Linux Sound Architecture - Driver
3			==========================================
4				    Configuration guide
5	
6	
7	Kernel Configuration
8	====================
9	
10	To enable ALSA support you need at least to build the kernel with
11	primary sound card support (CONFIG_SOUND).  Since ALSA can emulate OSS,
12	you don't have to choose any of the OSS modules.
13	
14	Enable "OSS API emulation" (CONFIG_SND_OSSEMUL) and both OSS mixer and
15	PCM supports if you want to run OSS applications with ALSA.
16	
17	If you want to support the WaveTable functionality on cards such as
18	SB Live! then you need to enable "Sequencer support"
19	(CONFIG_SND_SEQUENCER).
20	
21	To make ALSA debug messages more verbose, enable the "Verbose printk"
22	and "Debug" options.  To check for memory leaks, turn on "Debug memory"
23	too.  "Debug detection" will add checks for the detection of cards.
24	
25	Please note that all the ALSA ISA drivers support the Linux isapnp API
26	(if the card supports ISA PnP).  You don't need to configure the cards
27	using isapnptools.
28	
29	
30	Creating ALSA devices
31	=====================
32	
33	This depends on your distribution, but normally you use the /dev/MAKEDEV
34	script to create the necessary device nodes.  On some systems you use a
35	script named 'snddevices'.
36	
37	
38	Module parameters
39	=================
40	
41	The user can load modules with options. If the module supports more than
42	one card and you have more than one card of the same type then you can
43	specify multiple values for the option separated by commas.
44	
45	Prior to version 0.9.0rc4 options had a 'snd_' prefix. This was removed.
46	
47	  Module snd
48	  ----------
49	
50	    The core ALSA module.  It is used by all ALSA card drivers.
51	    It takes the following options which have global effects.
52	
53	    major	- major number for sound driver
54			- Default: 116
55	    cards_limit
56			- limiting card index for auto-loading (1-8)
57			- Default: 1
58			- For auto-loading more than one card, specify this
59			  option together with snd-card-X aliases.
60	    slots	- Reserve the slot index for the given driver.
61			  This option takes multiple strings.		
62			  See "Module Autoloading Support" section for details.
63	    debug	- Specifies the debug message level
64			  (0 = disable debug prints, 1 = normal debug messages,
65			   2 = verbose debug messages)
66			  This option appears only when CONFIG_SND_DEBUG=y.
67			  This option can be dynamically changed via sysfs
68			  /sys/modules/snd/parameters/debug file.
69	  
70	  Module snd-pcm-oss
71	  ------------------
72	
73	    The PCM OSS emulation module.
74	    This module takes options which change the mapping of devices.
75	
76	    dsp_map	- PCM device number maps assigned to the 1st OSS device.
77			- Default: 0
78	    adsp_map	- PCM device number maps assigned to the 2st OSS device.
79			- Default: 1
80	    nonblock_open
81			- Don't block opening busy PCM devices.  Default: 1
82	
83	    For example, when dsp_map=2, /dev/dsp will be mapped to PCM #2 of
84	    the card #0.  Similarly, when adsp_map=0, /dev/adsp will be mapped
85	    to PCM #0 of the card #0.
86	    For changing the second or later card, specify the option with
87	    commas, such like "dsp_map=0,1".
88	
89	    nonblock_open option is used to change the behavior of the PCM
90	    regarding opening the device.  When this option is non-zero,
91	    opening a busy OSS PCM device won't be blocked but return
92	    immediately with EAGAIN (just like O_NONBLOCK flag).
93	    
94	  Module snd-rawmidi
95	  ------------------
96	
97	    This module takes options which change the mapping of devices.
98	    similar to those of the snd-pcm-oss module.
99	
100	    midi_map	- MIDI device number maps assigned to the 1st OSS device.
101			- Default: 0
102	    amidi_map	- MIDI device number maps assigned to the 2st OSS device.
103			- Default: 1
104	
105	  Common parameters for top sound card modules
106	  --------------------------------------------
107	
108	    Each of top level sound card module takes the following options.
109	
110	    index	- index (slot #) of sound card
111			- Values: 0 through 31 or negative
112			- If nonnegative, assign that index number
113	                - if negative, interpret as a bitmask of permissible
114			  indices; the first free permitted index is assigned
115			- Default: -1
116	    id		- card ID (identifier or name)
117			- Can be up to 15 characters long
118			- Default: the card type
119			- A directory by this name is created under /proc/asound/
120			  containing information about the card
121			- This ID can be used instead of the index number in
122			  identifying the card
123	    enable  	- enable card
124			- Default: enabled, for PCI and ISA PnP cards
125	
126	  Module snd-adlib
127	  ----------------
128	
129	    Module for AdLib FM cards.
130	
131	    port	- port # for OPL chip
132	
133	    This module supports multiple cards. It does not support autoprobe, so
134	    the port must be specified. For actual AdLib FM cards it will be 0x388.
135	    Note that this card does not have PCM support and no mixer; only FM
136	    synthesis.
137	
138	    Make sure you have "sbiload" from the alsa-tools package available and,
139	    after loading the module, find out the assigned ALSA sequencer port
140	    number through "sbiload -l". Example output:
141	
142	      Port     Client name                       Port name
143	      64:0     OPL2 FM synth                     OPL2 FM Port
144	
145	    Load the std.sb and drums.sb patches also supplied by sbiload:
146	
147	      sbiload -p 64:0 std.sb drums.sb
148	
149	    If you use this driver to drive an OPL3, you can use std.o3 and drums.o3
150	    instead. To have the card produce sound, use aplaymidi from alsa-utils:
151	
152	      aplaymidi -p 64:0 foo.mid
153	
154	  Module snd-ad1816a
155	  ------------------
156	
157	    Module for sound cards based on Analog Devices AD1816A/AD1815 ISA chips.
158	
159	    clockfreq   - Clock frequency for AD1816A chip (default = 0, 33000Hz)
160	    
161	    This module supports multiple cards, autoprobe and PnP.
162	    
163	  Module snd-ad1848
164	  -----------------
165	
166	    Module for sound cards based on AD1848/AD1847/CS4248 ISA chips.
167	
168	    port	- port # for AD1848 chip
169	    irq		- IRQ # for AD1848  chip
170	    dma1	- DMA # for AD1848 chip (0,1,3)
171	    
172	    This module supports multiple cards.  It does not support autoprobe
173	    thus main port must be specified!!! Other ports are optional.
174	    
175	    The power-management is supported.
176	
177	  Module snd-ad1889
178	  -----------------
179	
180	    Module for Analog Devices AD1889 chips.
181	
182	    ac97_quirk  - AC'97 workaround for strange hardware
183	                  See the description of intel8x0 module for details.
184	
185	    This module supports multiple cards.
186	
187	  Module snd-ali5451
188	  ------------------
189	
190	    Module for ALi M5451 PCI chip.
191	
192	    pcm_channels    - Number of hardware channels assigned for PCM
193	    spdif           - Support SPDIF I/O
194	    		    - Default: disabled
195	
196	    This module supports one chip and autoprobe.
197	
198	    The power-management is supported.
199	
200	  Module snd-als100
201	  -----------------
202	
203	    Module for sound cards based on Avance Logic ALS100/ALS120 ISA chips.
204	
205	    This module supports multiple cards, autoprobe and PnP.
206	
207	    The power-management is supported.
208	
209	  Module snd-als300
210	  -----------------
211	
212	    Module for  Avance Logic ALS300 and ALS300+
213	
214	    This module supports multiple cards.
215	
216	    The power-management is supported.
217	
218	  Module snd-als4000
219	  ------------------
220	
221	    Module for sound cards based on Avance Logic ALS4000 PCI chip.
222	
223	    joystick_port - port # for legacy joystick support.
224	                    0 = disabled (default), 1 = auto-detect
225	    
226	    This module supports multiple cards, autoprobe and PnP.
227	
228	    The power-management is supported.
229	
230	  Module snd-atiixp
231	  -----------------
232	
233	    Module for ATI IXP 150/200/250/400 AC97 controllers.
234	
235	    ac97_clock		- AC'97 clock (default = 48000)
236	    ac97_quirk		- AC'97 workaround for strange hardware
237				  See "AC97 Quirk Option" section below.
238	    ac97_codec		- Workaround to specify which AC'97 codec 
239				  instead of probing.  If this works for you
240				  file a bug with your `lspci -vn` output.
241				  -2  -- Force probing.
242				  -1  -- Default behavior.
243				  0-2 -- Use the specified codec.
244	    spdif_aclink	- S/PDIF transfer over AC-link (default = 1)
245	
246	    This module supports one card and autoprobe.
247	
248	    ATI IXP has two different methods to control SPDIF output.  One is
249	    over AC-link and another is over the "direct" SPDIF output.  The
250	    implementation depends on the motherboard, and you'll need to
251	    choose the correct one via spdif_aclink module option.
252	
253	    The power-management is supported.
254	
255	  Module snd-atiixp-modem
256	  -----------------------
257	
258	    Module for ATI IXP 150/200/250 AC97 modem controllers.
259	
260	    This module supports one card and autoprobe.
261	
262	    Note: The default index value of this module is -2, i.e. the first
263	          slot is excluded.
264	
265	    The power-management is supported.
266	
267	  Module snd-au8810, snd-au8820, snd-au8830
268	  -----------------------------------------
269	
270	    Module for Aureal Vortex, Vortex2 and Advantage device.
271	
272	    pcifix	- Control PCI workarounds
273			  0 = Disable all workarounds
274			  1 = Force the PCI latency of the Aureal card to 0xff
275			  2 = Force the Extend PCI#2 Internal Master for Efficient
276			      Handling of Dummy Requests on the VIA KT133 AGP Bridge
277			  3 = Force both settings
278			  255 = Autodetect what is required (default)
279	
280	    This module supports all ADB PCM channels, ac97 mixer, SPDIF, hardware
281	    EQ, mpu401, gameport. A3D and wavetable support are still in development.
282	    Development and reverse engineering work is being coordinated at
283	    http://savannah.nongnu.org/projects/openvortex/
284	    SPDIF output has a copy of the AC97 codec output, unless you use the
285	    "spdif" pcm device, which allows raw data passthru.
286	    The hardware EQ hardware and SPDIF is only present in the Vortex2 and 
287	    Advantage.
288	
289	    Note: Some ALSA mixer applications don't handle the SPDIF sample rate 
290	           control correctly. If you have problems regarding this, try
291	           another ALSA compliant mixer (alsamixer works).
292	
293	  Module snd-aw2
294	  --------------
295	
296	    Module for Audiowerk2 sound card
297	
298	    This module supports multiple cards.
299	
300	  Module snd-azt2320
301	  ------------------
302	
303	    Module for sound cards based on Aztech System AZT2320 ISA chip (PnP only).
304	
305	    This module supports multiple cards, PnP and autoprobe.
306	    
307	    The power-management is supported.
308	
309	  Module snd-azt3328
310	  ------------------
311	
312	    Module for sound cards based on Aztech AZF3328 PCI chip.
313	
314	    joystick	- Enable joystick (default off)
315	
316	    This module supports multiple cards.
317	
318	  Module snd-bt87x
319	  ----------------
320	
321	    Module for video cards based on Bt87x chips.
322	
323	    digital_rate - Override the default digital rate (Hz)
324	    load_all	- Load the driver even if the card model isn't known
325	
326	    This module supports multiple cards.
327	
328	    Note: The default index value of this module is -2, i.e. the first
329	          slot is excluded.
330	
331	  Module snd-ca0106
332	  -----------------
333	
334	    Module for Creative Audigy LS and SB Live 24bit
335	
336	    This module supports multiple cards.
337	
338	
339	  Module snd-cmi8330
340	  ------------------
341	
342	    Module for sound cards based on C-Media CMI8330 ISA chips.
343	
344	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
345	
346	    with isapnp=0, the following options are available:
347	
348	    wssport	- port # for CMI8330 chip (WSS)
349	    wssirq	- IRQ # for CMI8330 chip (WSS)
350	    wssdma	- first DMA # for CMI8330 chip (WSS)
351	    sbport	- port # for CMI8330 chip (SB16)
352	    sbirq	- IRQ # for CMI8330 chip (SB16)
353	    sbdma8	- 8bit DMA # for CMI8330 chip (SB16)
354	    sbdma16	- 16bit DMA # for CMI8330 chip (SB16)
355	    fmport	- (optional) OPL3 I/O port
356	    mpuport	- (optional) MPU401 I/O port
357	    mpuirq	- (optional) MPU401 irq #
358	
359	    This module supports multiple cards and autoprobe.
360	
361	    The power-management is supported.
362	
363	  Module snd-cmipci
364	  -----------------
365	
366	    Module for C-Media CMI8338/8738/8768/8770 PCI sound cards.
367	
368	    mpu_port    - port address of MIDI interface (8338 only):
369			  0x300,0x310,0x320,0x330 = legacy port,
370			  0 = disable (default)
371	    fm_port     - port address of OPL-3 FM synthesizer (8x38 only):
372			  0x388 = legacy port,
373			  1 = integrated PCI port (default on 8738),
374			  0 = disable
375	    soft_ac3    - Software-conversion of raw SPDIF packets (model 033 only)
376	                  (default = 1)
377	    joystick_port - Joystick port address (0 = disable, 1 = auto-detect)
378	
379	    This module supports autoprobe and multiple cards.
380	    
381	    The power-management is supported.
382	
383	  Module snd-cs4231
384	  -----------------
385	
386	    Module for sound cards based on CS4231 ISA chips.
387	
388	    port	- port # for CS4231 chip
389	    mpu_port	- port # for MPU-401 UART (optional), -1 = disable
390	    irq		- IRQ # for CS4231 chip
391	    mpu_irq	- IRQ # for MPU-401 UART
392	    dma1	- first DMA # for CS4231 chip
393	    dma2	- second DMA # for CS4231 chip
394	    
395	    This module supports multiple cards. This module does not support autoprobe
396	    thus main port must be specified!!! Other ports are optional.
397	
398	    The power-management is supported.
399	    
400	  Module snd-cs4236
401	  -----------------
402	
403	    Module for sound cards based on CS4232/CS4232A,
404	    	       	     	   	   CS4235/CS4236/CS4236B/CS4237B/
405	                                   CS4238B/CS4239 ISA chips.
406	
407	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
408	
409	    with isapnp=0, the following options are available:
410	
411	    port	- port # for CS4236 chip (PnP setup - 0x534)
412	    cport	- control port # for CS4236 chip (PnP setup - 0x120,0x210,0xf00)
413	    mpu_port	- port # for MPU-401 UART (PnP setup - 0x300), -1 = disable
414	    fm_port	- FM port # for CS4236 chip (PnP setup - 0x388), -1 = disable
415	    irq		- IRQ # for CS4236 chip (5,7,9,11,12,15)
416	    mpu_irq	- IRQ # for MPU-401 UART (9,11,12,15)
417	    dma1	- first DMA # for CS4236 chip (0,1,3)
418	    dma2	- second DMA # for CS4236 chip (0,1,3), -1 = disable
419	    
420	    This module supports multiple cards. This module does not support autoprobe
421	    (if ISA PnP is not used) thus main port and control port must be
422	    specified!!! Other ports are optional.
423	
424	    The power-management is supported.
425	
426	    This module is aliased as snd-cs4232 since it provides the old
427	    snd-cs4232 functionality, too.
428	
429	  Module snd-cs4281
430	  -----------------
431	
432	    Module for Cirrus Logic CS4281 soundchip.
433	
434	    dual_codec	- Secondary codec ID (0 = disable, default)
435	
436	    This module supports multiple cards.
437	
438	    The power-management is supported.
439	
440	  Module snd-cs46xx
441	  -----------------
442	
443	    Module for PCI sound cards based on CS4610/CS4612/CS4614/CS4615/CS4622/
444					       CS4624/CS4630/CS4280 PCI chips.
445	
446	    external_amp     - Force to enable external amplifier.
447	    thinkpad         - Force to enable Thinkpad's CLKRUN control.
448	    mmap_valid       - Support OSS mmap mode (default = 0).
449	
450	    This module supports multiple cards and autoprobe.
451	    Usually external amp and CLKRUN controls are detected automatically
452	    from PCI sub vendor/device ids.  If they don't work, give the options
453	    above explicitly.
454	
455	    The power-management is supported.
456	
457	  Module snd-cs5530
458	  _________________
459	
460	    Module for Cyrix/NatSemi Geode 5530 chip. 
461	  
462	  Module snd-cs5535audio
463	  ----------------------
464	
465	    Module for multifunction CS5535 companion PCI device
466	
467	    The power-management is supported.
468	
469	  Module snd-ctxfi
470	  ----------------
471	
472	    Module for Creative Sound Blaster X-Fi boards (20k1 / 20k2 chips)
473		* Creative Sound Blaster X-Fi Titanium Fatal1ty Champion Series
474		* Creative Sound Blaster X-Fi Titanium Fatal1ty Professional Series
475		* Creative Sound Blaster X-Fi Titanium Professional Audio
476		* Creative Sound Blaster X-Fi Titanium
477		* Creative Sound Blaster X-Fi Elite Pro
478		* Creative Sound Blaster X-Fi Platinum
479		* Creative Sound Blaster X-Fi Fatal1ty
480		* Creative Sound Blaster X-Fi XtremeGamer
481		* Creative Sound Blaster X-Fi XtremeMusic
482	
483	    reference_rate	- reference sample rate, 44100 or 48000 (default)
484	    multiple		- multiple to ref. sample rate, 1 or 2 (default)
485	
486	    This module supports multiple cards.
487	
488	  Module snd-darla20
489	  ------------------
490	
491	    Module for Echoaudio Darla20
492	
493	    This module supports multiple cards.
494	    The driver requires the firmware loader support on kernel.
495	
496	  Module snd-darla24
497	  ------------------
498	
499	    Module for Echoaudio Darla24
500	
501	    This module supports multiple cards.
502	    The driver requires the firmware loader support on kernel.
503	
504	  Module snd-dt019x
505	  -----------------
506	
507	    Module for Diamond Technologies DT-019X / Avance Logic ALS-007 (PnP
508	    only)
509	
510	    This module supports multiple cards.  This module is enabled only with
511	    ISA PnP support.
512	
513	    The power-management is supported.
514	
515	  Module snd-dummy
516	  ----------------
517	
518	    Module for the dummy sound card. This "card" doesn't do any output
519	    or input, but you may use this module for any application which
520	    requires a sound card (like RealPlayer).
521	
522	    pcm_devs       - Number of PCM devices assigned to each card
523	                     (default = 1, up to 4)
524	    pcm_substreams - Number of PCM substreams assigned to each PCM
525	                     (default = 8, up to 128)
526	    hrtimer        - Use hrtimer (=1, default) or system timer (=0)
527	    fake_buffer    - Fake buffer allocations (default = 1)
528	
529	    When multiple PCM devices are created, snd-dummy gives different
530	    behavior to each PCM device:
531	      0 = interleaved with mmap support
532	      1 = non-interleaved with mmap support
533	      2 = interleaved without mmap 
534	      3 = non-interleaved without mmap
535	
536	    As default, snd-dummy drivers doesn't allocate the real buffers
537	    but either ignores read/write or mmap a single dummy page to all
538	    buffer pages, in order to save the resouces.  If your apps need
539	    the read/ written buffer data to be consistent, pass fake_buffer=0
540	    option.
541	
542	    The power-management is supported.
543	
544	  Module snd-echo3g
545	  -----------------
546	
547	    Module for Echoaudio 3G cards (Gina3G/Layla3G)
548	
549	    This module supports multiple cards.
550	    The driver requires the firmware loader support on kernel.
551	
552	  Module snd-emu10k1
553	  ------------------
554	
555	    Module for EMU10K1/EMU10k2 based PCI sound cards.
556				* Sound Blaster Live!
557				* Sound Blaster PCI 512
558				* Emu APS (partially supported)
559				* Sound Blaster Audigy
560	
561	    extin   - bitmap of available external inputs for FX8010 (see bellow)
562	    extout  - bitmap of available external outputs for FX8010 (see bellow)
563	    seq_ports - allocated sequencer ports (4 by default)
564	    max_synth_voices - limit of voices used for wavetable (64 by default)
565	    max_buffer_size  - specifies the maximum size of wavetable/pcm buffers
566	                       given in MB unit.  Default value is 128.
567	    enable_ir - enable IR
568	
569	    This module supports multiple cards and autoprobe.
570	
571	    Input & Output configurations 			[extin/extout]
572		* Creative Card wo/Digital out			[0x0003/0x1f03]
573		* Creative Card w/Digital out			[0x0003/0x1f0f]
574		* Creative Card w/Digital CD in			[0x000f/0x1f0f]
575		* Creative Card wo/Digital out + LiveDrive	[0x3fc3/0x1fc3]
576		* Creative Card w/Digital out + LiveDrive	[0x3fc3/0x1fcf]
577		* Creative Card w/Digital CD in + LiveDrive	[0x3fcf/0x1fcf]
578		* Creative Card wo/Digital out + Digital I/O 2  [0x0fc3/0x1f0f]
579		* Creative Card w/Digital out + Digital I/O 2	[0x0fc3/0x1f0f]
580		* Creative Card w/Digital CD in + Digital I/O 2	[0x0fcf/0x1f0f]
581	        * Creative Card 5.1/w Digital out + LiveDrive	[0x3fc3/0x1fff]
582		* Creative Card 5.1 (c) 2003			[0x3fc3/0x7cff]
583	        * Creative Card all ins and outs		[0x3fff/0x7fff]
584	    
585	    The power-management is supported.
586	
587	  Module snd-emu10k1x
588	  -------------------
589	
590	    Module for Creative Emu10k1X (SB Live Dell OEM version)
591	
592	    This module supports multiple cards.
593	
594	  Module snd-ens1370
595	  ------------------
596	
597	    Module for Ensoniq AudioPCI ES1370 PCI sound cards.
598				* SoundBlaster PCI 64
599				* SoundBlaster PCI 128
600	
601	    joystick		- Enable joystick (default off)
602	
603	    This module supports multiple cards and autoprobe.
604	    
605	    The power-management is supported.
606	
607	  Module snd-ens1371
608	  ------------------
609	
610	    Module for Ensoniq AudioPCI ES1371 PCI sound cards.
611				* SoundBlaster PCI 64
612				* SoundBlaster PCI 128
613				* SoundBlaster Vibra PCI
614	
615	    joystick_port	- port # for joystick (0x200,0x208,0x210,0x218),
616				  0 = disable (default), 1 = auto-detect
617	
618	    This module supports multiple cards and autoprobe.
619	    
620	    The power-management is supported.
621	
622	  Module snd-es968
623	  ----------------
624	
625	    Module for sound cards based on ESS ES968 chip (PnP only).
626	
627	    This module supports multiple cards, PnP and autoprobe.
628	    
629	    The power-management is supported.
630	
631	  Module snd-es1688
632	  -----------------
633	
634	    Module for ESS AudioDrive ES-1688 and ES-688 sound cards.
635	
636	    port	- port # for ES-1688 chip (0x220,0x240,0x260)
637	    fm_port	- port # for OPL3 (option; share the same port as default)
638	    mpu_port	- port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default)
639	    irq		- IRQ # for ES-1688 chip (5,7,9,10)
640	    mpu_irq	- IRQ # for MPU-401 port (5,7,9,10)
641	    dma8	- DMA # for ES-1688 chip (0,1,3)
642	
643	    This module supports multiple cards and autoprobe (without MPU-401 port).
644	
645	  Module snd-es18xx
646	  -----------------
647	
648	    Module for ESS AudioDrive ES-18xx sound cards.
649	
650	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
651	
652	    with isapnp=0, the following options are available:
653	
654	    port	- port # for ES-18xx chip (0x220,0x240,0x260)
655	    mpu_port	- port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default)
656	    fm_port	- port # for FM (optional, not used)
657	    irq		- IRQ # for ES-18xx chip (5,7,9,10)
658	    dma1	- first DMA # for ES-18xx chip (0,1,3)
659	    dma2	- first DMA # for ES-18xx chip (0,1,3)
660	
661	    This module supports multiple cards, ISA PnP and autoprobe (without MPU-401
662	    port if native ISA PnP routines are not used).
663	    When dma2 is equal with dma1, the driver works as half-duplex.
664	
665	    The power-management is supported.
666	
667	  Module snd-es1938
668	  -----------------
669	
670	    Module for sound cards based on ESS Solo-1 (ES1938,ES1946) chips.
671	
672	    This module supports multiple cards and autoprobe.
673	
674	    The power-management is supported.
675	
676	  Module snd-es1968
677	  -----------------
678	
679	    Module for sound cards based on ESS Maestro-1/2/2E (ES1968/ES1978) chips.
680	
681	    total_bufsize	- total buffer size in kB (1-4096kB)
682	    pcm_substreams_p	- playback channels (1-8, default=2)
683	    pcm_substreams_c	- capture channels (1-8, default=0)
684	    clock		- clock (0 = auto-detection)
685	    use_pm		- support the power-management (0 = off, 1 = on,
686				  2 = auto (default))
687	    enable_mpu		- enable MPU401 (0 = off, 1 = on, 2 = auto (default))
688	    joystick		- enable joystick (default off)       
689	
690	    This module supports multiple cards and autoprobe.
691	
692	    The power-management is supported.
693	
694	  Module snd-fm801
695	  ----------------
696	
697	    Module for ForteMedia FM801 based PCI sound cards.
698	
699	    tea575x_tuner       - Enable TEA575x tuner
700	                          - 1 = MediaForte 256-PCS
701	                          - 2 = MediaForte 256-PCPR
702	                          - 3 = MediaForte 64-PCR  
703	                          - High 16-bits are video (radio) device number + 1
704	                          - example: 0x10002 (MediaForte 256-PCPR, device 1)
705	
706	    This module supports multiple cards and autoprobe.
707	    
708	    The power-management is supported.
709	
710	  Module snd-gina20
711	  -----------------
712	
713	    Module for Echoaudio Gina20
714	
715	    This module supports multiple cards.
716	    The driver requires the firmware loader support on kernel.
717	
718	  Module snd-gina24
719	  -----------------
720	
721	    Module for Echoaudio Gina24
722	
723	    This module supports multiple cards.
724	    The driver requires the firmware loader support on kernel.
725	
726	  Module snd-gusclassic
727	  ---------------------
728	
729	    Module for Gravis UltraSound Classic sound card.
730	
731	    port	- port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
732	    irq		- IRQ # for GF1 chip (3,5,9,11,12,15)
733	    dma1	- DMA # for GF1 chip (1,3,5,6,7)
734	    dma2	- DMA # for GF1 chip (1,3,5,6,7,-1=disable)
735	    joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
736	    voices	- GF1 voices limit (14-32)
737	    pcm_voices	- reserved PCM voices
738	
739	    This module supports multiple cards and autoprobe.
740	
741	  Module snd-gusextreme
742	  ---------------------
743	
744	    Module for Gravis UltraSound Extreme (Synergy ViperMax) sound card.
745	
746	    port	- port # for ES-1688 chip (0x220,0x230,0x240,0x250,0x260)
747	    gf1_port	- port # for GF1 chip (0x210,0x220,0x230,0x240,0x250,0x260,0x270)
748	    mpu_port	- port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable
749	    irq		- IRQ # for ES-1688 chip (5,7,9,10)
750	    gf1_irq	- IRQ # for GF1 chip (3,5,9,11,12,15)
751	    mpu_irq	- IRQ # for MPU-401 port (5,7,9,10)
752	    dma8	- DMA # for ES-1688 chip (0,1,3)
753	    dma1	- DMA # for GF1 chip (1,3,5,6,7)
754	    joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
755	    voices	- GF1 voices limit (14-32)
756	    pcm_voices	- reserved PCM voices
757	
758	    This module supports multiple cards and autoprobe (without MPU-401 port).
759	
760	  Module snd-gusmax
761	  -----------------
762	
763	    Module for Gravis UltraSound MAX sound card.
764	
765	    port	- port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
766	    irq		- IRQ # for GF1 chip (3,5,9,11,12,15)
767	    dma1	- DMA # for GF1 chip (1,3,5,6,7)
768	    dma2	- DMA # for GF1 chip (1,3,5,6,7,-1=disable)
769	    joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
770	    voices	- GF1 voices limit (14-32)
771	    pcm_voices	- reserved PCM voices
772	
773	    This module supports multiple cards and autoprobe.
774	    
775	  Module snd-hda-intel
776	  --------------------
777	
778	    Module for Intel HD Audio (ICH6, ICH6M, ESB2, ICH7, ICH8, ICH9, ICH10,
779				PCH, SCH),
780			ATI SB450, SB600, R600, RS600, RS690, RS780, RV610, RV620,
781				RV630, RV635, RV670, RV770,
782			VIA VT8251/VT8237A,
783			SIS966, ULI M5461
784	
785	    [Multiple options for each card instance]
786	    model	- force the model name
787	    position_fix - Fix DMA pointer (0 = auto, 1 = use LPIB, 2 = POSBUF)
788	    probe_mask  - Bitmask to probe codecs (default = -1, meaning all slots)
789	    		  When the bit 8 (0x100) is set, the lower 8 bits are used
790			  as the "fixed" codec slots; i.e. the driver probes the
791			  slots regardless what hardware reports back
792	    probe_only	- Only probing and no codec initialization (default=off);
793			  Useful to check the initial codec status for debugging
794	    bdl_pos_adj	- Specifies the DMA IRQ timing delay in samples.
795			Passing -1 will make the driver to choose the appropriate
796			value based on the controller chip.
797	    patch	- Specifies the early "patch" files to modify the HD-audio
798	    		setup before initializing the codecs.  This option is
799			available only when CONFIG_SND_HDA_PATCH_LOADER=y is set.
800			See HD-Audio.txt for details.
801	    beep_mode	- Selects the beep registration mode (0=off, 1=on, 2=
802			dynamic registration via mute switch on/off); the default
803			value is set via CONFIG_SND_HDA_INPUT_BEEP_MODE kconfig.
804	    
805	    [Single (global) options]
806	    single_cmd  - Use single immediate commands to communicate with
807			codecs (for debugging only)
808	    enable_msi	- Enable Message Signaled Interrupt (MSI) (default = off)
809	    power_save	- Automatic power-saving timeout (in second, 0 =
810			disable)
811	    power_save_controller - Reset HD-audio controller in power-saving mode
812			(default = on)
813	
814	    This module supports multiple cards and autoprobe.
815	    
816	    See Documentation/sound/alsa/HD-Audio.txt for more details about
817	    HD-audio driver.
818	
819	    Each codec may have a model table for different configurations.
820	    If your machine isn't listed there, the default (usually minimal)
821	    configuration is set up.  You can pass "model=<name>" option to
822	    specify a certain model in such a case.  There are different
823	    models depending on the codec chip.  The list of available models
824	    is found in HD-Audio-Models.txt
825	
826	    The model name "genric" is treated as a special case.  When this
827	    model is given, the driver uses the generic codec parser without
828	    "codec-patch".  It's sometimes good for testing and debugging.
829	
830	    If the default configuration doesn't work and one of the above
831	    matches with your device, report it together with alsa-info.sh
832	    output (with --no-upload option) to kernel bugzilla or alsa-devel
833	    ML (see the section "Links and Addresses").
834	
835	    power_save and power_save_controller options are for power-saving
836	    mode.  See powersave.txt for details.
837	
838	    Note 2: If you get click noises on output, try the module option
839		    position_fix=1 or 2.  position_fix=1 will use the SD_LPIB
840		    register value without FIFO size correction as the current
841		    DMA pointer.  position_fix=2 will make the driver to use
842		    the position buffer instead of reading SD_LPIB register.
843		    (Usually SD_LPIB register is more accurate than the
844		    position buffer.)
845	
846	    NB: If you get many "azx_get_response timeout" messages at
847	    loading, it's likely a problem of interrupts (e.g. ACPI irq
848	    routing).  Try to boot with options like "pci=noacpi".  Also, you
849	    can try "single_cmd=1" module option.  This will switch the
850	    communication method between HDA controller and codecs to the
851	    single immediate commands instead of CORB/RIRB.  Basically, the
852	    single command mode is provided only for BIOS, and you won't get
853	    unsolicited events, too.  But, at least, this works independently
854	    from the irq.  Remember this is a last resort, and should be
855	    avoided as much as possible...
856	    
857	    MORE NOTES ON "azx_get_response timeout" PROBLEMS:
858	    On some hardwares, you may need to add a proper probe_mask option
859	    to avoid the "azx_get_response timeout" problem above, instead.
860	    This occurs when the access to non-existing or non-working codec slot
861	    (likely a modem one) causes a stall of the communication via HD-audio
862	    bus.  You can see which codec slots are probed by enabling
863	    CONFIG_SND_DEBUG_VERBOSE, or simply from the file name of the codec
864	    proc files.  Then limit the slots to probe by probe_mask option.
865	    For example, probe_mask=1 means to probe only the first slot, and
866	    probe_mask=4 means only the third slot.
867	
868	    The power-management is supported.
869	
870	  Module snd-hdsp
871	  ---------------
872	
873	    Module for RME Hammerfall DSP audio interface(s)
874	
875	    This module supports multiple cards.
876	
877	    Note: The firmware data can be automatically loaded via hotplug
878	          when CONFIG_FW_LOADER is set.  Otherwise, you need to load
879	          the firmware via hdsploader utility included in alsa-tools
880	          package.
881	          The firmware data is found in alsa-firmware package.
882	
883	    Note: snd-page-alloc module does the job which snd-hammerfall-mem
884	          module did formerly.  It will allocate the buffers in advance
885	          when any HDSP cards are found.  To make the buffer
886	          allocation sure, load snd-page-alloc module in the early
887	          stage of boot sequence.  See "Early Buffer Allocation"
888		  section.
889	
890	  Module snd-hdspm
891	  ----------------
892	
893	    Module for RME HDSP MADI board.
894	
895	    precise_ptr		- Enable precise pointer, or disable.
896	    line_outs_monitor	- Send playback streams to analog outs by default.
897	    enable_monitor	- Enable Analog Out on Channel 63/64 by default.
898	
899	    See hdspm.txt for details.
900	
901	  Module snd-hifier
902	  -----------------
903	
904	    Module for the MediaTek/TempoTec HiFier Fantasia sound card.
905	
906	    This module supports autoprobe and multiple cards.
907	
908	  Module snd-ice1712
909	  ------------------
910	
911	    Module for Envy24 (ICE1712) based PCI sound cards.
912				* MidiMan M Audio Delta 1010
913				* MidiMan M Audio Delta 1010LT
914				* MidiMan M Audio Delta DiO 2496
915				* MidiMan M Audio Delta 66
916				* MidiMan M Audio Delta 44
917				* MidiMan M Audio Delta 410
918				* MidiMan M Audio Audiophile 2496
919	                        * TerraTec EWS 88MT
920	                        * TerraTec EWS 88D
921	                        * TerraTec EWX 24/96
922	                        * TerraTec DMX 6Fire
923				* TerraTec Phase 88
924	                        * Hoontech SoundTrack DSP 24
925	                        * Hoontech SoundTrack DSP 24 Value
926	                        * Hoontech SoundTrack DSP 24 Media 7.1
927				* Event Electronics, EZ8
928	                        * Digigram VX442
929				* Lionstracs, Mediastaton
930				* Terrasoniq TS 88
931	
932	    model       - Use the given board model, one of the following:
933			  delta1010, dio2496, delta66, delta44, audiophile, delta410,
934			  delta1010lt, vx442, ewx2496, ews88mt, ews88mt_new, ews88d,
935			  dmx6fire, dsp24, dsp24_value, dsp24_71, ez8,
936			  phase88, mediastation
937	    omni	- Omni I/O support for MidiMan M-Audio Delta44/66
938	    cs8427_timeout - reset timeout for the CS8427 chip (S/PDIF transceiver)
939	                     in msec resolution, default value is 500 (0.5 sec)
940	
941	    This module supports multiple cards and autoprobe. Note: The consumer part
942	    is not used with all Envy24 based cards (for example in the MidiMan Delta
943	    serie).
944	
945	    Note: The supported board is detected by reading EEPROM or PCI
946		  SSID (if EEPROM isn't available).  You can override the
947		  model by passing "model" module option in case that the
948		  driver isn't configured properly or you want to try another
949		  type for testing.
950	
951	  Module snd-ice1724
952	  ------------------
953	
954	    Module for Envy24HT (VT/ICE1724), Envy24PT (VT1720) based PCI sound cards.
955				* MidiMan M Audio Revolution 5.1
956				* MidiMan M Audio Revolution 7.1
957				* MidiMan M Audio Audiophile 192
958				* AMP Ltd AUDIO2000
959				* TerraTec Aureon 5.1 Sky
960				* TerraTec Aureon 7.1 Space
961				* TerraTec Aureon 7.1 Universe
962				* TerraTec Phase 22
963				* TerraTec Phase 28
964				* AudioTrak Prodigy 7.1
965				* AudioTrak Prodigy 7.1 LT
966				* AudioTrak Prodigy 7.1 XT
967				* AudioTrak Prodigy 7.1 HIFI
968				* AudioTrak Prodigy 7.1 HD2
969				* AudioTrak Prodigy 192
970				* Pontis MS300
971				* Albatron K8X800 Pro II 
972				* Chaintech ZNF3-150
973				* Chaintech ZNF3-250
974				* Chaintech 9CJS
975				* Chaintech AV-710
976				* Shuttle SN25P
977				* Onkyo SE-90PCI
978				* Onkyo SE-200PCI
979				* ESI Juli@
980				* ESI Maya44
981				* Hercules Fortissimo IV
982				* EGO-SYS WaveTerminal 192M
983	
984	    model       - Use the given board model, one of the following:
985			  revo51, revo71, amp2000, prodigy71, prodigy71lt,
986			  prodigy71xt, prodigy71hifi, prodigyhd2, prodigy192,
987			  juli, aureon51, aureon71, universe, ap192, k8x800,
988			  phase22, phase28, ms300, av710, se200pci, se90pci,
989			  fortissimo4, sn25p, WT192M, maya44
990	
991	    This module supports multiple cards and autoprobe.
992	
993	    Note: The supported board is detected by reading EEPROM or PCI
994		  SSID (if EEPROM isn't available).  You can override the
995		  model by passing "model" module option in case that the
996		  driver isn't configured properly or you want to try another
997		  type for testing.
998	
999	  Module snd-indigo
1000	  -----------------
1001	
1002	    Module for Echoaudio Indigo
1003	
1004	    This module supports multiple cards.
1005	    The driver requires the firmware loader support on kernel.
1006	
1007	  Module snd-indigodj
1008	  -------------------
1009	
1010	    Module for Echoaudio Indigo DJ
1011	
1012	    This module supports multiple cards.
1013	    The driver requires the firmware loader support on kernel.
1014	
1015	  Module snd-indigoio
1016	  -------------------
1017	
1018	    Module for Echoaudio Indigo IO
1019	
1020	    This module supports multiple cards.
1021	    The driver requires the firmware loader support on kernel.
1022	
1023	  Module snd-intel8x0
1024	  -------------------
1025	
1026	    Module for AC'97 motherboards from Intel and compatibles.
1027				* Intel i810/810E, i815, i820, i830, i84x, MX440
1028					ICH5, ICH6, ICH7, 6300ESB, ESB2
1029				* SiS 7012 (SiS 735)
1030				* NVidia NForce, NForce2, NForce3, MCP04, CK804
1031					 CK8, CK8S, MCP501
1032				* AMD AMD768, AMD8111
1033				* ALi m5455
1034	
1035	    ac97_clock	  - AC'97 codec clock base (0 = auto-detect)
1036	    ac97_quirk    - AC'97 workaround for strange hardware
1037			    See "AC97 Quirk Option" section below.
1038	    buggy_irq     - Enable workaround for buggy interrupts on some
1039	                    motherboards (default yes on nForce chips,
1040			    otherwise off)
1041	    buggy_semaphore - Enable workaround for hardwares with buggy
1042			    semaphores (e.g. on some ASUS laptops)
1043			    (default off)
1044	    spdif_aclink  - Use S/PDIF over AC-link instead of direct connection
1045			    from the controller chip
1046			    (0 = off, 1 = on, -1 = default)
1047	
1048	    This module supports one chip and autoprobe.
1049	
1050	    Note: the latest driver supports auto-detection of chip clock.
1051	    if you still encounter too fast playback, specify the clock
1052	    explicitly via the module option "ac97_clock=41194".
1053	
1054	    Joystick/MIDI ports are not supported by this driver.  If your
1055	    motherboard has these devices, use the ns558 or snd-mpu401
1056	    modules, respectively.
1057	
1058	    The power-management is supported.
1059	    
1060	  Module snd-intel8x0m
1061	  --------------------
1062	
1063	    Module for Intel ICH (i8x0) chipset MC97 modems.
1064				* Intel i810/810E, i815, i820, i830, i84x, MX440
1065					ICH5, ICH6, ICH7
1066				* SiS 7013 (SiS 735)
1067				* NVidia NForce, NForce2, NForce2s, NForce3
1068				* AMD AMD8111
1069				* ALi m5455
1070	
1071	    ac97_clock	  - AC'97 codec clock base (0 = auto-detect)
1072	
1073	    This module supports one card and autoprobe.
1074	
1075	    Note: The default index value of this module is -2, i.e. the first
1076	          slot is excluded.
1077	
1078	    The power-management is supported.
1079	
1080	  Module snd-interwave
1081	  --------------------
1082	
1083	    Module for Gravis UltraSound PnP, Dynasonic 3-D/Pro, STB Sound Rage 32
1084	    and other sound cards based on AMD InterWave (tm) chip.
1085	  
1086	    joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
1087	    midi	- 1 = MIDI UART enable, 0 = MIDI UART disable (default)
1088	    pcm_voices	- reserved PCM voices for the synthesizer (default 2)
1089	    effect	- 1 = InterWave effects enable (default 0);
1090	                  requires 8 voices
1091	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1092	
1093	    with isapnp=0, the following options are available:
1094	
1095	    port	- port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260)
1096	    irq		- IRQ # for InterWave chip (3,5,9,11,12,15)
1097	    dma1	- DMA # for InterWave chip (0,1,3,5,6,7)
1098	    dma2	- DMA # for InterWave chip (0,1,3,5,6,7,-1=disable)
1099	
1100	    This module supports multiple cards, autoprobe and ISA PnP.
1101	
1102	  Module snd-interwave-stb
1103	  ------------------------
1104	
1105	    Module for UltraSound 32-Pro (sound card from STB used by Compaq)
1106	    and other sound cards based on AMD InterWave (tm) chip with TEA6330T
1107	    circuit for extended control of bass, treble and master volume.
1108	  
1109	    joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)
1110	    midi	- 1 = MIDI UART enable, 0 = MIDI UART disable (default)
1111	    pcm_voices	- reserved PCM voices for the synthesizer (default 2)
1112	    effect	- 1 = InterWave effects enable (default 0);
1113	                  requires 8 voices
1114	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1115	
1116	    with isapnp=0, the following options are available:
1117	
1118	    port	- port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260)
1119	    port_tc	- tone control (i2c bus) port # for TEA6330T chip (0x350,0x360,0x370,0x380)
1120	    irq		- IRQ # for InterWave chip (3,5,9,11,12,15)
1121	    dma1	- DMA # for InterWave chip (0,1,3,5,6,7)
1122	    dma2	- DMA # for InterWave chip (0,1,3,5,6,7,-1=disable)
1123	
1124	    This module supports multiple cards, autoprobe and ISA PnP.
1125	
1126	  Module snd-korg1212
1127	  -------------------
1128	
1129	    Module for Korg 1212 IO PCI card
1130	
1131	    This module supports multiple cards.
1132	
1133	  Module snd-layla20
1134	  ------------------
1135	
1136	    Module for Echoaudio Layla20
1137	
1138	    This module supports multiple cards.
1139	    The driver requires the firmware loader support on kernel.
1140	
1141	  Module snd-layla24
1142	  ------------------
1143	
1144	    Module for Echoaudio Layla24
1145	
1146	    This module supports multiple cards.
1147	    The driver requires the firmware loader support on kernel.
1148	
1149	  Module snd-lx6464es
1150	  -------------------
1151	
1152	    Module for Digigram LX6464ES boards
1153	
1154	    This module supports multiple cards.
1155	
1156	  Module snd-maestro3
1157	  -------------------
1158	
1159	    Module for Allegro/Maestro3 chips
1160	
1161	    external_amp     - enable external amp (enabled by default)
1162	    amp_gpio         - GPIO pin number for external amp (0-15) or
1163	                       -1 for default pin (8 for allegro, 1 for
1164	                       others) 
1165	
1166	    This module supports autoprobe and multiple chips.
1167	
1168	    Note: the binding of amplifier is dependent on hardware.
1169	    If there is no sound even though all channels are unmuted, try to
1170	    specify other gpio connection via amp_gpio option. 
1171	    For example, a Panasonic notebook might need "amp_gpio=0x0d"
1172	    option.
1173	
1174	    The power-management is supported.
1175	
1176	  Module snd-mia
1177	  ---------------
1178	
1179	    Module for Echoaudio Mia
1180	
1181	    This module supports multiple cards.
1182	    The driver requires the firmware loader support on kernel.
1183	
1184	  Module snd-miro
1185	  ---------------
1186	
1187	    Module for Miro soundcards: miroSOUND PCM 1 pro, 
1188					miroSOUND PCM 12,
1189					miroSOUND PCM 20 Radio.
1190	
1191	    port	- Port # (0x530,0x604,0xe80,0xf40)
1192	    irq		- IRQ # (5,7,9,10,11)
1193	    dma1	- 1st dma # (0,1,3)
1194	    dma2	- 2nd dma # (0,1)
1195	    mpu_port	- MPU-401 port # (0x300,0x310,0x320,0x330)
1196	    mpu_irq	- MPU-401 irq # (5,7,9,10)
1197	    fm_port	- FM Port # (0x388)
1198	    wss		- enable WSS mode
1199	    ide		- enable onboard ide support
1200	
1201	  Module snd-mixart
1202	  -----------------
1203	
1204	    Module for Digigram miXart8 sound cards.
1205	
1206	    This module supports multiple cards.
1207	    Note: One miXart8 board will be represented as 4 alsa cards.
1208	          See MIXART.txt for details.
1209	
1210	    When the driver is compiled as a module and the hotplug firmware
1211	    is supported, the firmware data is loaded via hotplug automatically.
1212	    Install the necessary firmware files in alsa-firmware package.
1213	    When no hotplug fw loader is available, you need to load the
1214	    firmware via mixartloader utility in alsa-tools package.
1215	
1216	  Module snd-mona
1217	  ---------------
1218	
1219	    Module for Echoaudio Mona
1220	
1221	    This module supports multiple cards.
1222	    The driver requires the firmware loader support on kernel.
1223	
1224	  Module snd-mpu401
1225	  -----------------
1226	
1227	    Module for MPU-401 UART devices.
1228	
1229	    port	- port number or -1 (disable)
1230	    irq		- IRQ number or -1 (disable)
1231	    pnp		- PnP detection - 0 = disable, 1 = enable (default)
1232	
1233	    This module supports multiple devices and PnP.
1234	    
1235	  Module snd-msnd-classic
1236	  -----------------------
1237	
1238	    Module for Turtle Beach MultiSound Classic, Tahiti or Monterey
1239	    soundcards.
1240	
1241	    io		- Port # for msnd-classic card
1242	    irq		- IRQ # for msnd-classic card
1243	    mem		- Memory address (0xb0000, 0xc8000, 0xd0000, 0xd8000,
1244			  0xe0000 or 0xe8000)
1245	    write_ndelay - enable write ndelay (default = 1)
1246	    calibrate_signal - calibrate signal (default = 0)
1247	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1248	    digital	- Digital daughterboard present (default = 0)
1249	    cfg		- Config port (0x250, 0x260 or 0x270) default = PnP
1250	    reset	- Reset all devices
1251	    mpu_io	- MPU401 I/O port
1252	    mpu_irq	- MPU401 irq#
1253	    ide_io0	- IDE port #0
1254	    ide_io1	- IDE port #1
1255	    ide_irq	- IDE irq#
1256	    joystick_io	- Joystick I/O port
1257	
1258	    The driver requires firmware files "turtlebeach/msndinit.bin" and
1259	    "turtlebeach/msndperm.bin" in the proper firmware directory.
1260	
1261	    See Documentation/sound/oss/MultiSound for important information
1262	    about this driver.  Note that it has been discontinued, but the 
1263	    Voyetra Turtle Beach knowledge base entry for it is still available
1264	    at
1265		http://www.turtlebeach.com/site/kb_ftp/790.asp
1266	
1267	  Module snd-msnd-pinnacle
1268	  ------------------------
1269	
1270	    Module for Turtle Beach MultiSound Pinnacle/Fiji soundcards.
1271	
1272	    io		- Port # for pinnacle/fiji card
1273	    irq		- IRQ # for pinnalce/fiji card
1274	    mem		- Memory address (0xb0000, 0xc8000, 0xd0000, 0xd8000,
1275			  0xe0000 or 0xe8000)
1276	    write_ndelay - enable write ndelay (default = 1)
1277	    calibrate_signal - calibrate signal (default = 0)
1278	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1279	
1280	    The driver requires firmware files "turtlebeach/pndspini.bin" and
1281	    "turtlebeach/pndsperm.bin" in the proper firmware directory.
1282	
1283	  Module snd-mtpav
1284	  ----------------
1285	
1286	    Module for MOTU MidiTimePiece AV multiport MIDI (on the parallel
1287	    port).
1288	
1289	    port	- I/O port # for MTPAV (0x378,0x278, default=0x378)
1290	    irq		- IRQ # for MTPAV (7,5, default=7)
1291	    hwports	- number of supported hardware ports, default=8.
1292	    
1293	    Module supports only 1 card.  This module has no enable option.
1294	
1295	  Module snd-mts64
1296	  ----------------
1297	
1298	    Module for Ego Systems (ESI) Miditerminal 4140
1299	
1300	    This module supports multiple devices.
1301	    Requires parport (CONFIG_PARPORT).
1302	
1303	  Module snd-nm256
1304	  ----------------
1305	
1306	    Module for NeoMagic NM256AV/ZX chips
1307	
1308	    playback_bufsize - max playback frame size in kB (4-128kB)
1309	    capture_bufsize  - max capture frame size in kB (4-128kB)
1310	    force_ac97       - 0 or 1 (disabled by default)
1311	    buffer_top       - specify buffer top address
1312	    use_cache        - 0 or 1 (disabled by default)
1313	    vaio_hack        - alias buffer_top=0x25a800
1314	    reset_workaround - enable AC97 RESET workaround for some laptops
1315	    reset_workaround2 - enable extended AC97 RESET workaround for some
1316			      other laptops
1317	
1318	    This module supports one chip and autoprobe.
1319	
1320	    The power-management is supported.
1321	
1322	    Note: on some notebooks the buffer address cannot be detected
1323	    automatically, or causes hang-up during initialization.
1324	    In such a case, specify the buffer top address explicitly via
1325	    the buffer_top option.
1326	    For example,
1327	      Sony F250: buffer_top=0x25a800
1328	      Sony F270: buffer_top=0x272800
1329	    The driver supports only ac97 codec.  It's possible to force
1330	    to initialize/use ac97 although it's not detected.  In such a
1331	    case, use force_ac97=1 option - but *NO* guarantee whether it
1332	    works!
1333	
1334	    Note: The NM256 chip can be linked internally with non-AC97
1335	    codecs.  This driver supports only the AC97 codec, and won't work
1336	    with machines with other (most likely CS423x or OPL3SAx) chips,
1337	    even though the device is detected in lspci.  In such a case, try
1338	    other drivers, e.g. snd-cs4232 or snd-opl3sa2.  Some has ISA-PnP
1339	    but some doesn't have ISA PnP.  You'll need to specify isapnp=0
1340	    and proper hardware parameters in the case without ISA PnP.
1341	
1342	    Note: some laptops need a workaround for AC97 RESET.  For the
1343	    known hardware like Dell Latitude LS and Sony PCG-F305, this
1344	    workaround is enabled automatically.  For other laptops with a
1345	    hard freeze, you can try reset_workaround=1 option.
1346	
1347	    Note: Dell Latitude CSx laptops have another problem regarding
1348	    AC97 RESET.  On these laptops, reset_workaround2 option is
1349	    turned on as default.  This option is worth to try if the
1350	    previous reset_workaround option doesn't help.
1351	
1352	    Note: This driver is really crappy.  It's a porting from the
1353	    OSS driver, which is a result of black-magic reverse engineering.
1354	    The detection of codec will fail if the driver is loaded *after*
1355	    X-server as described above.  You might be able to force to load
1356	    the module, but it may result in hang-up.   Hence, make sure that
1357	    you load this module *before* X if you encounter this kind of
1358	    problem.
1359	
1360	  Module snd-opl3sa2
1361	  ------------------
1362	
1363	    Module for Yamaha OPL3-SA2/SA3 sound cards.
1364	
1365	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1366	
1367	    with isapnp=0, the following options are available:
1368	
1369	    port	- control port # for OPL3-SA chip (0x370)
1370	    sb_port	- SB port # for OPL3-SA chip (0x220,0x240)
1371	    wss_port	- WSS port # for OPL3-SA chip (0x530,0xe80,0xf40,0x604)
1372	    midi_port	- port # for MPU-401 UART (0x300,0x330), -1 = disable
1373	    fm_port	- FM port # for OPL3-SA chip (0x388), -1 = disable
1374	    irq		- IRQ # for OPL3-SA chip (5,7,9,10)
1375	    dma1	- first DMA # for Yamaha OPL3-SA chip (0,1,3)
1376	    dma2	- second DMA # for Yamaha OPL3-SA chip (0,1,3), -1 = disable
1377	    
1378	    This module supports multiple cards and ISA PnP.  It does not support
1379	    autoprobe (if ISA PnP is not used) thus all ports must be specified!!!
1380	    
1381	    The power-management is supported.
1382	
1383	  Module snd-opti92x-ad1848
1384	  -------------------------
1385	
1386	    Module for sound cards based on OPTi 82c92x and Analog Devices AD1848 chips.
1387	    Module works with OAK Mozart cards as well.
1388	    
1389	    isapnp    - ISA PnP detection - 0 = disable, 1 = enable (default)
1390	
1391	    with isapnp=0, the following options are available:
1392	
1393	    port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
1394	    mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
1395	    fm_port   - port # for OPL3 device (0x388)
1396	    irq       - IRQ # for WSS chip (5,7,9,10,11)
1397	    mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
1398	    dma1      - first DMA # for WSS chip (0,1,3)
1399	
1400	    This module supports only one card, autoprobe and PnP.
1401	
1402	  Module snd-opti92x-cs4231
1403	  -------------------------
1404	
1405	    Module for sound cards based on OPTi 82c92x and Crystal CS4231 chips.
1406	    
1407	    isapnp    - ISA PnP detection - 0 = disable, 1 = enable (default)
1408	
1409	    with isapnp=0, the following options are available:
1410	
1411	    port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
1412	    mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
1413	    fm_port   - port # for OPL3 device (0x388)
1414	    irq       - IRQ # for WSS chip (5,7,9,10,11)
1415	    mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
1416	    dma1      - first DMA # for WSS chip (0,1,3)
1417	    dma2      - second DMA # for WSS chip (0,1,3)
1418	
1419	    This module supports only one card, autoprobe and PnP.
1420	
1421	  Module snd-opti93x
1422	  ------------------
1423	
1424	    Module for sound cards based on OPTi 82c93x chips.
1425	    
1426	    isapnp    - ISA PnP detection - 0 = disable, 1 = enable (default)
1427	
1428	    with isapnp=0, the following options are available:
1429	
1430	    port      - port # for WSS chip (0x530,0xe80,0xf40,0x604)
1431	    mpu_port  - port # for MPU-401 UART (0x300,0x310,0x320,0x330)
1432	    fm_port   - port # for OPL3 device (0x388)
1433	    irq       - IRQ # for WSS chip (5,7,9,10,11)
1434	    mpu_irq   - IRQ # for MPU-401 UART (5,7,9,10)
1435	    dma1      - first DMA # for WSS chip (0,1,3)
1436	    dma2      - second DMA # for WSS chip (0,1,3)
1437	
1438	    This module supports only one card, autoprobe and PnP.
1439	
1440	  Module snd-oxygen
1441	  -----------------
1442	
1443	    Module for sound cards based on the C-Media CMI8788 chip:
1444	    * Asound A-8788
1445	    * AuzenTech X-Meridian
1446	    * Bgears b-Enspirer
1447	    * Club3D Theatron DTS
1448	    * HT-Omega Claro (plus)
1449	    * HT-Omega Claro halo (XT)
1450	    * Razer Barracuda AC-1
1451	    * Sondigo Inferno
1452	
1453	    This module supports autoprobe and multiple cards.
1454	
1455	  Module snd-pcsp
1456	  -----------------
1457	
1458	    Module for internal PC-Speaker.
1459	
1460	    nopcm	- Disable PC-Speaker PCM sound. Only beeps remain.
1461	    nforce_wa	- enable NForce chipset workaround. Expect bad sound.
1462	
1463	    This module supports system beeps, some kind of PCM playback and
1464	    even a few mixer controls.
1465	
1466	  Module snd-pcxhr
1467	  ----------------
1468	
1469	    Module for Digigram PCXHR boards
1470	
1471	    This module supports multiple cards.
1472	
1473	  Module snd-portman2x4
1474	  ---------------------
1475	
1476	    Module for Midiman Portman 2x4 parallel port MIDI interface
1477	
1478	    This module supports multiple cards.
1479	
1480	  Module snd-powermac (on ppc only)
1481	  ---------------------------------
1482	
1483	    Module for PowerMac, iMac and iBook on-board soundchips
1484	
1485	    enable_beep     - enable beep using PCM (enabled as default)
1486	
1487	    Module supports autoprobe a chip.
1488	
1489	    Note: the driver may have problems regarding endianess.
1490	
1491	    The power-management is supported.
1492	
1493	  Module snd-pxa2xx-ac97 (on arm only)
1494	  ------------------------------------
1495	
1496	    Module for AC97 driver for the Intel PXA2xx chip
1497	
1498	    For ARM architecture only.
1499	
1500	    The power-management is supported.
1501	
1502	  Module snd-riptide
1503	  ------------------
1504	
1505	    Module for Conexant Riptide chip
1506	
1507	      joystick_port	- Joystick port # (default: 0x200)
1508	      mpu_port		- MPU401 port # (default: 0x330)
1509	      opl3_port		- OPL3 port # (default: 0x388)
1510	
1511	    This module supports multiple cards.
1512	    The driver requires the firmware loader support on kernel.
1513	    You need to install the firmware file "riptide.hex" to the standard
1514	    firmware path (e.g. /lib/firmware).
1515	
1516	  Module snd-rme32
1517	  ----------------
1518	
1519	    Module for RME Digi32, Digi32 Pro and Digi32/8 (Sek'd Prodif32, 
1520	    Prodif96 and Prodif Gold) sound cards.
1521	
1522	    This module supports multiple cards.
1523	
1524	  Module snd-rme96
1525	  ----------------
1526	
1527	    Module for RME Digi96, Digi96/8 and Digi96/8 PRO/PAD/PST sound cards.
1528	
1529	    This module supports multiple cards.
1530	
1531	  Module snd-rme9652
1532	  ------------------
1533	
1534	    Module for RME Digi9652 (Hammerfall, Hammerfall-Light) sound cards.
1535	
1536	    precise_ptr	- Enable precise pointer (doesn't work reliably).
1537			  (default = 0)
1538	
1539	    This module supports multiple cards.
1540	
1541	    Note: snd-page-alloc module does the job which snd-hammerfall-mem
1542	          module did formerly.  It will allocate the buffers in advance
1543	          when any RME9652 cards are found.  To make the buffer
1544	          allocation sure, load snd-page-alloc module in the early
1545	          stage of boot sequence.  See "Early Buffer Allocation"
1546		  section.
1547	
1548	  Module snd-sa11xx-uda1341 (on arm only)
1549	  ---------------------------------------
1550	
1551	    Module for Philips UDA1341TS on Compaq iPAQ H3600 sound card.
1552	
1553	    Module supports only one card.
1554	    Module has no enable and index options.
1555	
1556	    The power-management is supported.
1557	
1558	  Module snd-sb8
1559	  --------------
1560	
1561	    Module for 8-bit SoundBlaster cards: SoundBlaster 1.0,
1562						 SoundBlaster 2.0,
1563						 SoundBlaster Pro
1564	
1565	    port	- port # for SB DSP chip (0x220,0x240,0x260)
1566	    irq		- IRQ # for SB DSP chip (5,7,9,10)
1567	    dma8	- DMA # for SB DSP chip (1,3)
1568	
1569	    This module supports multiple cards and autoprobe.
1570	    
1571	    The power-management is supported.
1572	
1573	  Module snd-sb16 and snd-sbawe
1574	  -----------------------------
1575	
1576	    Module for 16-bit SoundBlaster cards: SoundBlaster 16 (PnP),
1577						  SoundBlaster AWE 32 (PnP),
1578						  SoundBlaster AWE 64 PnP
1579	
1580	    mic_agc	- Mic Auto-Gain-Control - 0 = disable, 1 = enable (default)
1581	    csp		- ASP/CSP chip support - 0 = disable (default), 1 = enable
1582	    isapnp	- ISA PnP detection - 0 = disable, 1 = enable (default)
1583	
1584	    with isapnp=0, the following options are available:
1585	
1586	    port	- port # for SB DSP 4.x chip (0x220,0x240,0x260)
1587	    mpu_port	- port # for MPU-401 UART (0x300,0x330), -1 = disable
1588	    awe_port	- base port # for EMU8000 synthesizer (0x620,0x640,0x660)
1589	                   (snd-sbawe module only)
1590	    irq		- IRQ # for SB DSP 4.x chip (5,7,9,10)
1591	    dma8	- 8-bit DMA # for SB DSP 4.x chip (0,1,3)
1592	    dma16	- 16-bit DMA # for SB DSP 4.x chip (5,6,7)
1593	    
1594	    This module supports multiple cards, autoprobe and ISA PnP.
1595	
1596	    Note: To use Vibra16X cards in 16-bit half duplex mode, you must
1597	          disable 16bit DMA with dma16 = -1 module parameter.
1598	          Also, all Sound Blaster 16 type cards can operate in 16-bit
1599	          half duplex mode through 8-bit DMA channel by disabling their
1600	          16-bit DMA channel.
1601	    
1602	    The power-management is supported.
1603	
1604	  Module snd-sc6000
1605	  -----------------
1606	
1607	    Module for Gallant SC-6000 soundcard and later models: SC-6600
1608	    and SC-7000.
1609	
1610	    port	- Port # (0x220 or 0x240)
1611	    mss_port	- MSS Port # (0x530 or 0xe80)
1612	    irq		- IRQ # (5,7,9,10,11)
1613	    mpu_irq	- MPU-401 IRQ # (5,7,9,10) ,0 - no MPU-401 irq
1614	    dma		- DMA # (1,3,0)
1615	    joystick	- Enable gameport - 0 = disable (default), 1 = enable
1616	
1617	    This module supports multiple cards.
1618	
1619	    This card is also known as Audio Excel DSP 16 or Zoltrix AV302.
1620	
1621	  Module snd-sgalaxy
1622	  ------------------
1623	
1624	    Module for Aztech Sound Galaxy sound card.
1625	
1626	    sbport	- Port # for SB16 interface (0x220,0x240)
1627	    wssport	- Port # for WSS interface (0x530,0xe80,0xf40,0x604)
1628	    irq		- IRQ # (7,9,10,11)
1629	    dma1	- DMA #
1630	
1631	    This module supports multiple cards.
1632	
1633	    The power-management is supported.
1634	
1635	  Module snd-sscape
1636	  -----------------
1637	
1638	    Module for ENSONIQ SoundScape cards.
1639	
1640	    port	- Port # (PnP setup)
1641	    wss_port	- WSS Port # (PnP setup)
1642	    irq		- IRQ # (PnP setup)
1643	    mpu_irq	- MPU-401 IRQ # (PnP setup)
1644	    dma		- DMA # (PnP setup)
1645	    dma2	- 2nd DMA # (PnP setup, -1 to disable)
1646	    joystick	- Enable gameport - 0 = disable (default), 1 = enable
1647	
1648	    This module supports multiple cards.
1649	
1650	    The driver requires the firmware loader support on kernel.
1651	
1652	  Module snd-sun-amd7930 (on sparc only)
1653	  --------------------------------------
1654	
1655	    Module for AMD7930 sound chips found on Sparcs.
1656	
1657	    This module supports multiple cards.
1658	
1659	  Module snd-sun-cs4231 (on sparc only)
1660	  -------------------------------------
1661	
1662	    Module for CS4231 sound chips found on Sparcs.
1663	
1664	    This module supports multiple cards.
1665	
1666	  Module snd-sun-dbri (on sparc only)
1667	  -----------------------------------
1668	
1669	    Module for DBRI sound chips found on Sparcs.
1670	
1671	    This module supports multiple cards.
1672	
1673	  Module snd-wavefront
1674	  --------------------
1675	
1676	    Module for Turtle Beach Maui, Tropez and Tropez+ sound cards.
1677	
1678	    use_cs4232_midi - Use CS4232 MPU-401 interface
1679	                      (inaccessibly located inside your computer)
1680	    isapnp          - ISA PnP detection - 0 = disable, 1 = enable (default)
1681	
1682	    with isapnp=0, the following options are available:
1683	
1684	    cs4232_pcm_port - Port # for CS4232 PCM interface.
1685	    cs4232_pcm_irq  - IRQ # for CS4232 PCM interface (5,7,9,11,12,15).
1686	    cs4232_mpu_port - Port # for CS4232 MPU-401 interface.
1687	    cs4232_mpu_irq  - IRQ # for CS4232 MPU-401 interface (9,11,12,15).
1688	    ics2115_port    - Port # for ICS2115
1689	    ics2115_irq     - IRQ # for ICS2115
1690	    fm_port         - FM OPL-3 Port #
1691	    dma1            - DMA1 # for CS4232 PCM interface.
1692	    dma2            - DMA2 # for CS4232 PCM interface.
1693	
1694	    The below are options for wavefront_synth features:
1695	    wf_raw	    - Assume that we need to boot the OS (default:no)
1696		If yes, then during driver loading, the state of the board is
1697		ignored, and we reset the board and load the firmware anyway.
1698	    fx_raw	    - Assume that the FX process needs help (default:yes)
1699		If false, we'll leave the FX processor in whatever state it is
1700		when the driver is loaded.  The default is to download the
1701		microprogram and associated coefficients to set it up for
1702		"default" operation, whatever that means.
1703	    debug_default   - Debug parameters for card initialization
1704	    wait_usecs	    - How long to wait without sleeping, usecs
1705			      (default:150)
1706		This magic number seems to give pretty optimal throughput
1707		based on my limited experimentation. 
1708		If you want to play around with it and find a better value, be
1709		my guest. Remember, the idea is to get a number that causes us
1710		to just busy wait for as many WaveFront commands as possible,
1711		without coming up with a number so large that we hog the whole
1712		CPU. 
1713		Specifically, with this number, out of about 134,000 status
1714		waits, only about 250 result in a sleep. 
1715	    sleep_interval  - How long to sleep when waiting for reply
1716			      (default: 100)
1717	    sleep_tries	    - How many times to try sleeping during a wait
1718			      (default: 50)
1719	    ospath	    - Pathname to processed ICS2115 OS firmware
1720			      (default:wavefront.os)
1721		The path name of the ISC2115 OS firmware.  In the recent
1722		version, it's handled via firmware loader framework, so it
1723		must be installed in the proper path, typically,
1724		/lib/firmware.
1725	    reset_time	    - How long to wait for a reset to take effect
1726			      (default:2)
1727	    ramcheck_time   - How many seconds to wait for the RAM test
1728			      (default:20)
1729	    osrun_time	    - How many seconds to wait for the ICS2115 OS
1730			      (default:10)
1731	
1732	    This module supports multiple cards and ISA PnP.
1733	
1734	    Note: the firmware file "wavefront.os" was located in the earlier
1735	          version in /etc.  Now it's loaded via firmware loader, and
1736		  must be in the proper firmware path, such as /lib/firmware.
1737		  Copy (or symlink) the file appropriately if you get an error
1738		  regarding firmware downloading after upgrading the kernel.
1739	
1740	  Module snd-sonicvibes
1741	  ---------------------
1742	
1743	    Module for S3 SonicVibes PCI sound cards.
1744				* PINE Schubert 32 PCI
1745	
1746	    reverb    - Reverb Enable - 1 = enable, 0 = disable (default)
1747	                  - SoundCard must have onboard SRAM for this.
1748	    mge       - Mic Gain Enable - 1 = enable, 0 = disable (default)
1749	    
1750	    This module supports multiple cards and autoprobe.
1751	
1752	  Module snd-serial-u16550
1753	  ------------------------
1754	
1755	    Module for UART16550A serial MIDI ports.
1756	
1757	    port	- port # for UART16550A chip
1758	    irq		- IRQ # for UART16550A chip, -1 = poll mode
1759	    speed	- speed in bauds (9600,19200,38400,57600,115200)
1760			  38400 = default
1761	    base	- base for divisor in bauds (57600,115200,230400,460800)
1762			  115200 = default
1763	    outs	- number of MIDI ports in a serial port (1-4)
1764			  1 = default
1765	    adaptor	- Type of adaptor.
1766	                  0 = Soundcanvas, 1 = MS-124T, 2 = MS-124W S/A,
1767			  3 = MS-124W M/B, 4 = Generic
1768	    
1769	    This module supports multiple cards. This module does not support autoprobe
1770	    thus the main port must be specified!!! Other options are optional.
1771	
1772	  Module snd-trident
1773	  ------------------
1774	
1775	    Module for Trident 4DWave DX/NX sound cards.
1776				* Best Union  Miss Melody 4DWave PCI
1777				* HIS  4DWave PCI
1778				* Warpspeed  ONSpeed 4DWave PCI
1779				* AzTech  PCI 64-Q3D
1780				* Addonics  SV 750
1781				* CHIC  True Sound 4Dwave
1782				* Shark  Predator4D-PCI
1783				* Jaton  SonicWave 4D
1784				* SiS SI7018 PCI Audio
1785				* Hoontech SoundTrack Digital 4DWave NX
1786	
1787	    pcm_channels   - max channels (voices) reserved for PCM
1788	    wavetable_size - max wavetable size in kB (4-?kb)
1789	
1790	    This module supports multiple cards and autoprobe.
1791	
1792	    The power-management is supported.
1793	
1794	  Module snd-usb-audio
1795	  --------------------
1796	
1797	    Module for USB audio and USB MIDI devices.
1798	
1799	    vid             - Vendor ID for the device (optional)
1800	    pid             - Product ID for the device (optional)
1801	    nrpacks	    - Max. number of packets per URB (default: 8)
1802	    async_unlink    - Use async unlink mode (default: yes)
1803	    device_setup    - Device specific magic number (optional)
1804	                    - Influence depends on the device
1805	                    - Default: 0x0000 
1806	    ignore_ctl_error - Ignore any USB-controller regarding mixer
1807	    		       interface (default: no)
1808	
1809	    This module supports multiple devices, autoprobe and hotplugging.
1810	
1811	    NB: nrpacks parameter can be modified dynamically via sysfs.
1812	        Don't put the value over 20.  Changing via sysfs has no sanity
1813		check.
1814	    NB: async_unlink=0 would cause Oops.  It remains just for
1815	        debugging purpose (if any).
1816	    NB: ignore_ctl_error=1 may help when you get an error at accessing
1817	        the mixer element such as URB error -22.  This happens on some
1818	        buggy USB device or the controller.
1819	
1820	  Module snd-usb-caiaq
1821	  --------------------
1822	
1823	    Module for caiaq UB audio interfaces,
1824		    * Native Instruments RigKontrol2
1825		    * Native Instruments Kore Controller
1826		    * Native Instruments Audio Kontrol 1
1827		    * Native Instruments Audio 8 DJ
1828	
1829	    This module supports multiple devices, autoprobe and hotplugging.
1830	
1831	  Module snd-usb-usx2y
1832	  --------------------
1833	
1834	    Module for Tascam USB US-122, US-224 and US-428 devices.
1835	
1836	    This module supports multiple devices, autoprobe and hotplugging.
1837	
1838	    Note: you need to load the firmware via usx2yloader utility included
1839	          in alsa-tools and alsa-firmware packages.
1840	
1841	  Module snd-via82xx
1842	  ------------------
1843	
1844	    Module for AC'97 motherboards based on VIA 82C686A/686B, 8233,
1845	    8233A, 8233C, 8235, 8237 (south) bridge.
1846	
1847	    mpu_port	- 0x300,0x310,0x320,0x330, otherwise obtain BIOS setup
1848			  [VIA686A/686B only]
1849	    joystick	- Enable joystick (default off) [VIA686A/686B only]
1850	    ac97_clock	- AC'97 codec clock base (default 48000Hz)
1851	    dxs_support	- support DXS channels,
1852			  0 = auto (default), 1 = enable, 2 = disable,
1853			  3 = 48k only, 4 = no VRA, 5 = enable any sample
1854			  rate and different sample rates on different
1855			  channels
1856			  [VIA8233/C, 8235, 8237 only]
1857	    ac97_quirk  - AC'97 workaround for strange hardware
1858			  See "AC97 Quirk Option" section below.
1859	
1860	    This module supports one chip and autoprobe.
1861	
1862	    Note: on some SMP motherboards like MSI 694D the interrupts might
1863	          not be generated properly.  In such a case, please try to
1864	          set the SMP (or MPS) version on BIOS to 1.1 instead of
1865	          default value 1.4.  Then the interrupt number will be
1866	          assigned under 15. You might also upgrade your BIOS.
1867	    
1868	    Note: VIA8233/5/7 (not VIA8233A) can support DXS (direct sound)
1869		  channels as the first PCM.  On these channels, up to 4
1870		  streams can be played at the same time, and the controller
1871		  can perform sample rate conversion with separate rates for
1872		  each channel.
1873		  As default (dxs_support = 0), 48k fixed rate is chosen
1874		  except for the known devices since the output is often
1875		  noisy except for 48k on some mother boards due to the
1876		  bug of BIOS.
1877		  Please try once dxs_support=5 and if it works on other
1878		  sample rates (e.g. 44.1kHz of mp3 playback), please let us
1879		  know the PCI subsystem vendor/device id's (output of
1880		  "lspci -nv").
1881		  If dxs_support=5 does not work, try dxs_support=4; if it
1882		  doesn't work too, try dxs_support=1.  (dxs_support=1 is
1883		  usually for old motherboards.  The correct implemented
1884		  board should work with 4 or 5.)  If it still doesn't
1885		  work and the default setting is ok, dxs_support=3 is the
1886		  right choice.  If the default setting doesn't work at all,
1887		  try dxs_support=2 to disable the DXS channels.
1888		  In any cases, please let us know the result and the
1889		  subsystem vendor/device ids.  See "Links and Addresses"
1890		  below.
1891	
1892	    Note: for the MPU401 on VIA823x, use snd-mpu401 driver
1893		  additionally.  The mpu_port option is for VIA686 chips only.
1894	
1895	    The power-management is supported.
1896	
1897	  Module snd-via82xx-modem
1898	  ------------------------
1899	
1900	    Module for VIA82xx AC97 modem
1901	
1902	    ac97_clock	- AC'97 codec clock base (default 48000Hz)
1903	
1904	    This module supports one card and autoprobe.
1905	
1906	    Note: The default index value of this module is -2, i.e. the first
1907	          slot is excluded.
1908	
1909	    The power-management is supported.
1910	
1911	  Module snd-virmidi
1912	  ------------------
1913	
1914	    Module for virtual rawmidi devices.
1915	    This module creates virtual rawmidi devices which communicate
1916	    to the corresponding ALSA sequencer ports.
1917	
1918	    midi_devs	- MIDI devices # (1-4, default=4)
1919	    
1920	    This module supports multiple cards.
1921	
1922	  Module snd-virtuoso
1923	  -------------------
1924	
1925	    Module for sound cards based on the Asus AV100/AV200 chips,
1926	    i.e., Xonar D1, DX, D2, D2X, HDAV1.3 (Deluxe), Essence ST
1927	    (Deluxe) and Essence STX.
1928	
1929	    This module supports autoprobe and multiple cards.
1930	
1931	  Module snd-vx222
1932	  ----------------
1933	
1934	    Module for Digigram VX-Pocket VX222, V222 v2 and Mic cards.
1935	
1936	    mic		- Enable Microphone on V222 Mic (NYI)
1937	    ibl		- Capture IBL size. (default = 0, minimum size)
1938	
1939	    This module supports multiple cards.
1940	
1941	    When the driver is compiled as a module and the hotplug firmware
1942	    is supported, the firmware data is loaded via hotplug automatically.
1943	    Install the necessary firmware files in alsa-firmware package.
1944	    When no hotplug fw loader is available, you need to load the
1945	    firmware via vxloader utility in alsa-tools package.  To invoke
1946	    vxloader automatically, add the following to /etc/modprobe.conf
1947	
1948		install snd-vx222 /sbin/modprobe --first-time -i snd-vx222 && /usr/bin/vxloader
1949	
1950	    (for 2.2/2.4 kernels, add "post-install /usr/bin/vxloader" to
1951	     /etc/modules.conf, instead.)
1952	    IBL size defines the interrupts period for PCM.  The smaller size
1953	    gives smaller latency but leads to more CPU consumption, too.
1954	    The size is usually aligned to 126.  As default (=0), the smallest
1955	    size is chosen.  The possible IBL values can be found in
1956	    /proc/asound/cardX/vx-status proc file.
1957	
1958	    The power-management is supported.
1959	
1960	  Module snd-vxpocket
1961	  -------------------
1962	
1963	    Module for Digigram VX-Pocket VX2 and 440 PCMCIA cards.
1964	
1965	    ibl      - Capture IBL size. (default = 0, minimum size)
1966	
1967	    This module supports multiple cards.  The module is compiled only when
1968	    PCMCIA is supported on kernel.
1969	
1970	    With the older 2.6.x kernel, to activate the driver via the card
1971	    manager, you'll need to set up /etc/pcmcia/vxpocket.conf.  See the
1972	    sound/pcmcia/vx/vxpocket.c.  2.6.13 or later kernel requires no
1973	    longer require a config file.
1974	
1975	    When the driver is compiled as a module and the hotplug firmware
1976	    is supported, the firmware data is loaded via hotplug automatically.
1977	    Install the necessary firmware files in alsa-firmware package.
1978	    When no hotplug fw loader is available, you need to load the
1979	    firmware via vxloader utility in alsa-tools package.
1980	
1981	    About capture IBL, see the description of snd-vx222 module.
1982	
1983	    Note: snd-vxp440 driver is merged to snd-vxpocket driver since
1984	           ALSA 1.0.10.
1985	
1986	    The power-management is supported.
1987	
1988	  Module snd-ymfpci
1989	  -----------------
1990	
1991	    Module for Yamaha PCI chips (YMF72x, YMF74x & YMF75x).
1992	
1993	    mpu_port      - 0x300,0x330,0x332,0x334, 0 (disable) by default,
1994	                    1 (auto-detect for YMF744/754 only)
1995	    fm_port       - 0x388,0x398,0x3a0,0x3a8, 0 (disable) by default
1996	                    1 (auto-detect for YMF744/754 only)
1997	    joystick_port - 0x201,0x202,0x204,0x205, 0 (disable) by default,
1998	                    1 (auto-detect)
1999	    rear_switch   - enable shared rear/line-in switch (bool)
2000	
2001	    This module supports autoprobe and multiple chips.
2002	
2003	    The power-management is supported.
2004	
2005	  Module snd-pdaudiocf
2006	  --------------------
2007	
2008	    Module for Sound Core PDAudioCF sound card.
2009	
2010	    The power-management is supported.
2011	
2012	
2013	AC97 Quirk Option
2014	=================
2015	
2016	The ac97_quirk option is used to enable/override the workaround for
2017	specific devices on drivers for on-board AC'97 controllers like
2018	snd-intel8x0.  Some hardware have swapped output pins between Master
2019	and Headphone, or Surround (thanks to confusion of AC'97
2020	specifications from version to version :-)
2021	
2022	The driver provides the auto-detection of known problematic devices,
2023	but some might be unknown or wrongly detected.  In such a case, pass
2024	the proper value with this option.
2025	
2026	The following strings are accepted:
2027	    - default	Don't override the default setting
2028	    - none	Disable the quirk
2029	    - hp_only	Bind Master and Headphone controls as a single control
2030	    - swap_hp	Swap headphone and master controls
2031	    - swap_surround  Swap master and surround controls
2032	    - ad_sharing  For AD1985, turn on OMS bit and use headphone
2033	    - alc_jack	For ALC65x, turn on the jack sense mode
2034	    - inv_eapd	Inverted EAPD implementation
2035	    - mute_led	Bind EAPD bit for turning on/off mute LED
2036	
2037	For backward compatibility, the corresponding integer value -1, 0,
2038	... are  accepted, too.
2039	
2040	For example, if "Master" volume control has no effect on your device
2041	but only "Headphone" does, pass ac97_quirk=hp_only module option.
2042	
2043	
2044	Configuring Non-ISAPNP Cards
2045	============================
2046	
2047	When the kernel is configured with ISA-PnP support, the modules
2048	supporting the isapnp cards will have module options "isapnp".
2049	If this option is set, *only* the ISA-PnP devices will be probed.
2050	For probing the non ISA-PnP cards, you have to pass "isapnp=0" option
2051	together with the proper i/o and irq configuration.
2052	
2053	When the kernel is configured without ISA-PnP support, isapnp option
2054	will be not built in.
2055	
2056	
2057	Module Autoloading Support
2058	==========================
2059	
2060	The ALSA drivers can be loaded automatically on demand by defining
2061	module aliases.  The string 'snd-card-%1' is requested for ALSA native
2062	devices where %i is sound card number from zero to seven.
2063	
2064	To auto-load an ALSA driver for OSS services, define the string
2065	'sound-slot-%i' where %i means the slot number for OSS, which
2066	corresponds to the card index of ALSA.  Usually, define this
2067	as the same card module.
2068	
2069	An example configuration for a single emu10k1 card is like below:
2070	----- /etc/modprobe.conf
2071	alias snd-card-0 snd-emu10k1
2072	alias sound-slot-0 snd-emu10k1
2073	----- /etc/modprobe.conf
2074	
2075	The available number of auto-loaded sound cards depends on the module
2076	option "cards_limit" of snd module.  As default it's set to 1.
2077	To enable the auto-loading of multiple cards, specify the number of
2078	sound cards in that option.
2079	
2080	When multiple cards are available, it'd better to specify the index
2081	number for each card via module option, too, so that the order of
2082	cards is kept consistent.
2083	
2084	An example configuration for two sound cards is like below:
2085	
2086	----- /etc/modprobe.conf
2087	# ALSA portion
2088	options snd cards_limit=2
2089	alias snd-card-0 snd-interwave
2090	alias snd-card-1 snd-ens1371
2091	options snd-interwave index=0
2092	options snd-ens1371 index=1
2093	# OSS/Free portion
2094	alias sound-slot-0 snd-interwave
2095	alias sound-slot-1 snd-ens1371
2096	----- /etc/modprobe.conf
2097	
2098	In this example, the interwave card is always loaded as the first card
2099	(index 0) and ens1371 as the second (index 1).
2100	
2101	Alternative (and new) way to fixate the slot assignment is to use
2102	"slots" option of snd module.  In the case above, specify like the
2103	following: 
2104	
2105	options snd slots=snd-interwave,snd-ens1371
2106	
2107	Then, the first slot (#0) is reserved for snd-interwave driver, and
2108	the second (#1) for snd-ens1371.  You can omit index option in each
2109	driver if slots option is used (although you can still have them at
2110	the same time as long as they don't conflict).
2111	
2112	The slots option is especially useful for avoiding the possible
2113	hot-plugging and the resultant slot conflict.  For example, in the
2114	case above again, the first two slots are already reserved.  If any
2115	other driver (e.g. snd-usb-audio) is loaded before snd-interwave or
2116	snd-ens1371, it will be assigned to the third or later slot.
2117	
2118	When a module name is given with '!', the slot will be given for any
2119	modules but that name.  For example, "slots=!snd-pcsp" will reserve
2120	the first slot for any modules but snd-pcsp. 
2121	
2122	
2123	ALSA PCM devices to OSS devices mapping
2124	=======================================
2125	
2126	/dev/snd/pcmC0D0[c|p]  -> /dev/audio0 (/dev/audio) -> minor 4
2127	/dev/snd/pcmC0D0[c|p]  -> /dev/dsp0 (/dev/dsp)     -> minor 3
2128	/dev/snd/pcmC0D1[c|p]  -> /dev/adsp0 (/dev/adsp)   -> minor 12
2129	/dev/snd/pcmC1D0[c|p]  -> /dev/audio1              -> minor 4+16 = 20
2130	/dev/snd/pcmC1D0[c|p]  -> /dev/dsp1                -> minor 3+16 = 19
2131	/dev/snd/pcmC1D1[c|p]  -> /dev/adsp1               -> minor 12+16 = 28
2132	/dev/snd/pcmC2D0[c|p]  -> /dev/audio2              -> minor 4+32 = 36
2133	/dev/snd/pcmC2D0[c|p]  -> /dev/dsp2                -> minor 3+32 = 39
2134	/dev/snd/pcmC2D1[c|p]  -> /dev/adsp2               -> minor 12+32 = 44
2135	
2136	The first number from /dev/snd/pcmC{X}D{Y}[c|p] expression means
2137	sound card number and second means device number.  The ALSA devices
2138	have either 'c' or 'p' suffix indicating the direction, capture and
2139	playback, respectively.
2140	
2141	Please note that the device mapping above may be varied via the module
2142	options of snd-pcm-oss module.
2143	
2144	
2145	Proc interfaces (/proc/asound)
2146	==============================
2147	
2148	/proc/asound/card#/pcm#[cp]/oss
2149	-------------------------------
2150	  String "erase" - erase all additional informations about OSS applications
2151	  String "<app_name> <fragments> <fragment_size> [<options>]"
2152	
2153	   <app_name> - name of application with (higher priority) or without path
2154	   <fragments> - number of fragments or zero if auto
2155	   <fragment_size> - size of fragment in bytes or zero if auto
2156	   <options> - optional parameters
2157		  - disable   the application tries to open a pcm device for
2158			      this channel but does not want to use it.
2159			      (Cause a bug or mmap needs)
2160			      It's good for Quake etc...
2161		  - direct    don't use plugins
2162		  - block     force block mode (rvplayer)
2163		  - non-block force non-block mode
2164		  - whole-frag  write only whole fragments (optimization affecting
2165				playback only)
2166		  - no-silence  do not fill silence ahead to avoid clicks
2167		  - buggy-ptr	Returns the whitespace blocks in GETOPTR ioctl
2168				instead of filled blocks
2169	
2170	  Example: echo "x11amp 128 16384" > /proc/asound/card0/pcm0p/oss
2171	           echo "squake 0 0 disable" > /proc/asound/card0/pcm0c/oss
2172		   echo "rvplayer 0 0 block" > /proc/asound/card0/pcm0p/oss
2173	
2174	
2175	Early Buffer Allocation
2176	=======================
2177	
2178	Some drivers (e.g. hdsp) require the large contiguous buffers, and
2179	sometimes it's too late to find such spaces when the driver module is
2180	actually loaded due to memory fragmentation.  You can pre-allocate the
2181	PCM buffers by loading snd-page-alloc module and write commands to its
2182	proc file in prior, for example, in the early boot stage like
2183	/etc/init.d/*.local scripts.
2184	
2185	Reading the proc file /proc/drivers/snd-page-alloc shows the current
2186	usage of page allocation.  In writing, you can send the following
2187	commands to the snd-page-alloc driver:
2188	
2189	  - add VENDOR DEVICE MASK SIZE BUFFERS
2190	
2191	    VENDOR and DEVICE are PCI vendor and device IDs.  They take
2192	    integer numbers (0x prefix is needed for the hex).
2193	    MASK is the PCI DMA mask.  Pass 0 if not restricted.
2194	    SIZE is the size of each buffer to allocate.  You can pass
2195	    k and m suffix for KB and MB.  The max number is 16MB.
2196	    BUFFERS is the number of buffers to allocate.  It must be greater
2197	    than 0.  The max number is 4.
2198	
2199	  - erase
2200	
2201	    This will erase the all pre-allocated buffers which are not in
2202	    use.
2203	
2204	
2205	Links and Addresses
2206	===================
2207	
2208	  ALSA project homepage
2209	       http://www.alsa-project.org
2210	
2211	  Kernel Bugzilla
2212	       http://bugzilla.kernel.org/
2213	
2214	  ALSA Developers ML
2215	       mailto:alsa-devel[AT]alsa-project[DOT]org
2216	
2217	  alsa-info.sh script
2218	       http://www.alsa-project.org/alsa-info.sh
Hide Line Numbers
About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.