1*4882a593Smuzhiyun============================================================== 2*4882a593SmuzhiyunAdvanced Linux Sound Architecture - Driver Configuration guide 3*4882a593Smuzhiyun============================================================== 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunKernel Configuration 7*4882a593Smuzhiyun==================== 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunTo enable ALSA support you need at least to build the kernel with 10*4882a593Smuzhiyunprimary sound card support (``CONFIG_SOUND``). Since ALSA can emulate 11*4882a593SmuzhiyunOSS, you don't have to choose any of the OSS modules. 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunEnable "OSS API emulation" (``CONFIG_SND_OSSEMUL``) and both OSS mixer 14*4882a593Smuzhiyunand PCM supports if you want to run OSS applications with ALSA. 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunIf you want to support the WaveTable functionality on cards such as 17*4882a593SmuzhiyunSB Live! then you need to enable "Sequencer support" 18*4882a593Smuzhiyun(``CONFIG_SND_SEQUENCER``). 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunTo make ALSA debug messages more verbose, enable the "Verbose printk" 21*4882a593Smuzhiyunand "Debug" options. To check for memory leaks, turn on "Debug memory" 22*4882a593Smuzhiyuntoo. "Debug detection" will add checks for the detection of cards. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunPlease note that all the ALSA ISA drivers support the Linux isapnp API 25*4882a593Smuzhiyun(if the card supports ISA PnP). You don't need to configure the cards 26*4882a593Smuzhiyunusing isapnptools. 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunModule parameters 30*4882a593Smuzhiyun================= 31*4882a593Smuzhiyun 32*4882a593SmuzhiyunThe user can load modules with options. If the module supports more than 33*4882a593Smuzhiyunone card and you have more than one card of the same type then you can 34*4882a593Smuzhiyunspecify multiple values for the option separated by commas. 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun 37*4882a593SmuzhiyunModule snd 38*4882a593Smuzhiyun---------- 39*4882a593Smuzhiyun 40*4882a593SmuzhiyunThe core ALSA module. It is used by all ALSA card drivers. 41*4882a593SmuzhiyunIt takes the following options which have global effects. 42*4882a593Smuzhiyun 43*4882a593Smuzhiyunmajor 44*4882a593Smuzhiyun major number for sound driver; 45*4882a593Smuzhiyun Default: 116 46*4882a593Smuzhiyuncards_limit 47*4882a593Smuzhiyun limiting card index for auto-loading (1-8); 48*4882a593Smuzhiyun Default: 1; 49*4882a593Smuzhiyun For auto-loading more than one card, specify this option 50*4882a593Smuzhiyun together with snd-card-X aliases. 51*4882a593Smuzhiyunslots 52*4882a593Smuzhiyun Reserve the slot index for the given driver; 53*4882a593Smuzhiyun This option takes multiple strings. 54*4882a593Smuzhiyun See `Module Autoloading Support`_ section for details. 55*4882a593Smuzhiyundebug 56*4882a593Smuzhiyun Specifies the debug message level; 57*4882a593Smuzhiyun (0 = disable debug prints, 1 = normal debug messages, 58*4882a593Smuzhiyun 2 = verbose debug messages); 59*4882a593Smuzhiyun This option appears only when ``CONFIG_SND_DEBUG=y``. 60*4882a593Smuzhiyun This option can be dynamically changed via sysfs 61*4882a593Smuzhiyun /sys/modules/snd/parameters/debug file. 62*4882a593Smuzhiyun 63*4882a593SmuzhiyunModule snd-pcm-oss 64*4882a593Smuzhiyun------------------ 65*4882a593Smuzhiyun 66*4882a593SmuzhiyunThe PCM OSS emulation module. 67*4882a593SmuzhiyunThis module takes options which change the mapping of devices. 68*4882a593Smuzhiyun 69*4882a593Smuzhiyundsp_map 70*4882a593Smuzhiyun PCM device number maps assigned to the 1st OSS device; 71*4882a593Smuzhiyun Default: 0 72*4882a593Smuzhiyunadsp_map 73*4882a593Smuzhiyun PCM device number maps assigned to the 2st OSS device; 74*4882a593Smuzhiyun Default: 1 75*4882a593Smuzhiyunnonblock_open 76*4882a593Smuzhiyun Don't block opening busy PCM devices; 77*4882a593Smuzhiyun Default: 1 78*4882a593Smuzhiyun 79*4882a593SmuzhiyunFor example, when ``dsp_map=2``, /dev/dsp will be mapped to PCM #2 of 80*4882a593Smuzhiyunthe card #0. Similarly, when ``adsp_map=0``, /dev/adsp will be mapped 81*4882a593Smuzhiyunto PCM #0 of the card #0. 82*4882a593SmuzhiyunFor changing the second or later card, specify the option with 83*4882a593Smuzhiyuncommas, such like ``dsp_map=0,1``. 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun``nonblock_open`` option is used to change the behavior of the PCM 86*4882a593Smuzhiyunregarding opening the device. When this option is non-zero, 87*4882a593Smuzhiyunopening a busy OSS PCM device won't be blocked but return 88*4882a593Smuzhiyunimmediately with EAGAIN (just like O_NONBLOCK flag). 89*4882a593Smuzhiyun 90*4882a593SmuzhiyunModule snd-rawmidi 91*4882a593Smuzhiyun------------------ 92*4882a593Smuzhiyun 93*4882a593SmuzhiyunThis module takes options which change the mapping of devices. 94*4882a593Smuzhiyunsimilar to those of the snd-pcm-oss module. 95*4882a593Smuzhiyun 96*4882a593Smuzhiyunmidi_map 97*4882a593Smuzhiyun MIDI device number maps assigned to the 1st OSS device; 98*4882a593Smuzhiyun Default: 0 99*4882a593Smuzhiyunamidi_map 100*4882a593Smuzhiyun MIDI device number maps assigned to the 2st OSS device; 101*4882a593Smuzhiyun Default: 1 102*4882a593Smuzhiyun 103*4882a593SmuzhiyunModule snd-soc-core 104*4882a593Smuzhiyun------------------- 105*4882a593Smuzhiyun 106*4882a593SmuzhiyunThe soc core module. It is used by all ALSA card drivers. 107*4882a593SmuzhiyunIt takes the following options which have global effects. 108*4882a593Smuzhiyun 109*4882a593Smuzhiyunprealloc_buffer_size_kbytes 110*4882a593Smuzhiyun Specify prealloc buffer size in kbytes (default: 512). 111*4882a593Smuzhiyun 112*4882a593SmuzhiyunCommon parameters for top sound card modules 113*4882a593Smuzhiyun-------------------------------------------- 114*4882a593Smuzhiyun 115*4882a593SmuzhiyunEach of top level sound card module takes the following options. 116*4882a593Smuzhiyun 117*4882a593Smuzhiyunindex 118*4882a593Smuzhiyun index (slot #) of sound card; 119*4882a593Smuzhiyun Values: 0 through 31 or negative; 120*4882a593Smuzhiyun If nonnegative, assign that index number; 121*4882a593Smuzhiyun if negative, interpret as a bitmask of permissible indices; 122*4882a593Smuzhiyun the first free permitted index is assigned; 123*4882a593Smuzhiyun Default: -1 124*4882a593Smuzhiyunid 125*4882a593Smuzhiyun card ID (identifier or name); 126*4882a593Smuzhiyun Can be up to 15 characters long; 127*4882a593Smuzhiyun Default: the card type; 128*4882a593Smuzhiyun A directory by this name is created under /proc/asound/ 129*4882a593Smuzhiyun containing information about the card; 130*4882a593Smuzhiyun This ID can be used instead of the index number in 131*4882a593Smuzhiyun identifying the card 132*4882a593Smuzhiyunenable 133*4882a593Smuzhiyun enable card; 134*4882a593Smuzhiyun Default: enabled, for PCI and ISA PnP cards 135*4882a593Smuzhiyun 136*4882a593SmuzhiyunModule snd-adlib 137*4882a593Smuzhiyun---------------- 138*4882a593Smuzhiyun 139*4882a593SmuzhiyunModule for AdLib FM cards. 140*4882a593Smuzhiyun 141*4882a593Smuzhiyunport 142*4882a593Smuzhiyun port # for OPL chip 143*4882a593Smuzhiyun 144*4882a593SmuzhiyunThis module supports multiple cards. It does not support autoprobe, so 145*4882a593Smuzhiyunthe port must be specified. For actual AdLib FM cards it will be 0x388. 146*4882a593SmuzhiyunNote that this card does not have PCM support and no mixer; only FM 147*4882a593Smuzhiyunsynthesis. 148*4882a593Smuzhiyun 149*4882a593SmuzhiyunMake sure you have ``sbiload`` from the alsa-tools package available and, 150*4882a593Smuzhiyunafter loading the module, find out the assigned ALSA sequencer port 151*4882a593Smuzhiyunnumber through ``sbiload -l``. 152*4882a593Smuzhiyun 153*4882a593SmuzhiyunExample output: 154*4882a593Smuzhiyun:: 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun Port Client name Port name 157*4882a593Smuzhiyun 64:0 OPL2 FM synth OPL2 FM Port 158*4882a593Smuzhiyun 159*4882a593SmuzhiyunLoad the ``std.sb`` and ``drums.sb`` patches also supplied by ``sbiload``: 160*4882a593Smuzhiyun:: 161*4882a593Smuzhiyun 162*4882a593Smuzhiyun sbiload -p 64:0 std.sb drums.sb 163*4882a593Smuzhiyun 164*4882a593SmuzhiyunIf you use this driver to drive an OPL3, you can use ``std.o3`` and ``drums.o3`` 165*4882a593Smuzhiyuninstead. To have the card produce sound, use ``aplaymidi`` from alsa-utils: 166*4882a593Smuzhiyun:: 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun aplaymidi -p 64:0 foo.mid 169*4882a593Smuzhiyun 170*4882a593SmuzhiyunModule snd-ad1816a 171*4882a593Smuzhiyun------------------ 172*4882a593Smuzhiyun 173*4882a593SmuzhiyunModule for sound cards based on Analog Devices AD1816A/AD1815 ISA chips. 174*4882a593Smuzhiyun 175*4882a593Smuzhiyunclockfreq 176*4882a593Smuzhiyun Clock frequency for AD1816A chip (default = 0, 33000Hz) 177*4882a593Smuzhiyun 178*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and PnP. 179*4882a593Smuzhiyun 180*4882a593SmuzhiyunModule snd-ad1848 181*4882a593Smuzhiyun----------------- 182*4882a593Smuzhiyun 183*4882a593SmuzhiyunModule for sound cards based on AD1848/AD1847/CS4248 ISA chips. 184*4882a593Smuzhiyun 185*4882a593Smuzhiyunport 186*4882a593Smuzhiyun port # for AD1848 chip 187*4882a593Smuzhiyunirq 188*4882a593Smuzhiyun IRQ # for AD1848 chip 189*4882a593Smuzhiyundma1 190*4882a593Smuzhiyun DMA # for AD1848 chip (0,1,3) 191*4882a593Smuzhiyun 192*4882a593SmuzhiyunThis module supports multiple cards. It does not support autoprobe 193*4882a593Smuzhiyunthus main port must be specified!!! Other ports are optional. 194*4882a593Smuzhiyun 195*4882a593SmuzhiyunThe power-management is supported. 196*4882a593Smuzhiyun 197*4882a593SmuzhiyunModule snd-ad1889 198*4882a593Smuzhiyun----------------- 199*4882a593Smuzhiyun 200*4882a593SmuzhiyunModule for Analog Devices AD1889 chips. 201*4882a593Smuzhiyun 202*4882a593Smuzhiyunac97_quirk 203*4882a593Smuzhiyun AC'97 workaround for strange hardware; 204*4882a593Smuzhiyun See the description of intel8x0 module for details. 205*4882a593Smuzhiyun 206*4882a593SmuzhiyunThis module supports multiple cards. 207*4882a593Smuzhiyun 208*4882a593SmuzhiyunModule snd-ali5451 209*4882a593Smuzhiyun------------------ 210*4882a593Smuzhiyun 211*4882a593SmuzhiyunModule for ALi M5451 PCI chip. 212*4882a593Smuzhiyun 213*4882a593Smuzhiyunpcm_channels 214*4882a593Smuzhiyun Number of hardware channels assigned for PCM 215*4882a593Smuzhiyunspdif 216*4882a593Smuzhiyun Support SPDIF I/O; 217*4882a593Smuzhiyun Default: disabled 218*4882a593Smuzhiyun 219*4882a593SmuzhiyunThis module supports one chip and autoprobe. 220*4882a593Smuzhiyun 221*4882a593SmuzhiyunThe power-management is supported. 222*4882a593Smuzhiyun 223*4882a593SmuzhiyunModule snd-als100 224*4882a593Smuzhiyun----------------- 225*4882a593Smuzhiyun 226*4882a593SmuzhiyunModule for sound cards based on Avance Logic ALS100/ALS120 ISA chips. 227*4882a593Smuzhiyun 228*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and PnP. 229*4882a593Smuzhiyun 230*4882a593SmuzhiyunThe power-management is supported. 231*4882a593Smuzhiyun 232*4882a593SmuzhiyunModule snd-als300 233*4882a593Smuzhiyun----------------- 234*4882a593Smuzhiyun 235*4882a593SmuzhiyunModule for Avance Logic ALS300 and ALS300+ 236*4882a593Smuzhiyun 237*4882a593SmuzhiyunThis module supports multiple cards. 238*4882a593Smuzhiyun 239*4882a593SmuzhiyunThe power-management is supported. 240*4882a593Smuzhiyun 241*4882a593SmuzhiyunModule snd-als4000 242*4882a593Smuzhiyun------------------ 243*4882a593Smuzhiyun 244*4882a593SmuzhiyunModule for sound cards based on Avance Logic ALS4000 PCI chip. 245*4882a593Smuzhiyun 246*4882a593Smuzhiyunjoystick_port 247*4882a593Smuzhiyun port # for legacy joystick support; 248*4882a593Smuzhiyun 0 = disabled (default), 1 = auto-detect 249*4882a593Smuzhiyun 250*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and PnP. 251*4882a593Smuzhiyun 252*4882a593SmuzhiyunThe power-management is supported. 253*4882a593Smuzhiyun 254*4882a593SmuzhiyunModule snd-asihpi 255*4882a593Smuzhiyun----------------- 256*4882a593Smuzhiyun 257*4882a593SmuzhiyunModule for AudioScience ASI soundcards 258*4882a593Smuzhiyun 259*4882a593Smuzhiyunenable_hpi_hwdep 260*4882a593Smuzhiyun enable HPI hwdep for AudioScience soundcard 261*4882a593Smuzhiyun 262*4882a593SmuzhiyunThis module supports multiple cards. 263*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 264*4882a593Smuzhiyun 265*4882a593SmuzhiyunModule snd-atiixp 266*4882a593Smuzhiyun----------------- 267*4882a593Smuzhiyun 268*4882a593SmuzhiyunModule for ATI IXP 150/200/250/400 AC97 controllers. 269*4882a593Smuzhiyun 270*4882a593Smuzhiyunac97_clock 271*4882a593Smuzhiyun AC'97 clock (default = 48000) 272*4882a593Smuzhiyunac97_quirk 273*4882a593Smuzhiyun AC'97 workaround for strange hardware; 274*4882a593Smuzhiyun See `AC97 Quirk Option`_ section below. 275*4882a593Smuzhiyunac97_codec 276*4882a593Smuzhiyun Workaround to specify which AC'97 codec instead of probing. 277*4882a593Smuzhiyun If this works for you file a bug with your `lspci -vn` output. 278*4882a593Smuzhiyun (-2 = Force probing, -1 = Default behavior, 0-2 = Use the 279*4882a593Smuzhiyun specified codec.) 280*4882a593Smuzhiyunspdif_aclink 281*4882a593Smuzhiyun S/PDIF transfer over AC-link (default = 1) 282*4882a593Smuzhiyun 283*4882a593SmuzhiyunThis module supports one card and autoprobe. 284*4882a593Smuzhiyun 285*4882a593SmuzhiyunATI IXP has two different methods to control SPDIF output. One is 286*4882a593Smuzhiyunover AC-link and another is over the "direct" SPDIF output. The 287*4882a593Smuzhiyunimplementation depends on the motherboard, and you'll need to 288*4882a593Smuzhiyunchoose the correct one via spdif_aclink module option. 289*4882a593Smuzhiyun 290*4882a593SmuzhiyunThe power-management is supported. 291*4882a593Smuzhiyun 292*4882a593SmuzhiyunModule snd-atiixp-modem 293*4882a593Smuzhiyun----------------------- 294*4882a593Smuzhiyun 295*4882a593SmuzhiyunModule for ATI IXP 150/200/250 AC97 modem controllers. 296*4882a593Smuzhiyun 297*4882a593SmuzhiyunThis module supports one card and autoprobe. 298*4882a593Smuzhiyun 299*4882a593SmuzhiyunNote: The default index value of this module is -2, i.e. the first 300*4882a593Smuzhiyunslot is excluded. 301*4882a593Smuzhiyun 302*4882a593SmuzhiyunThe power-management is supported. 303*4882a593Smuzhiyun 304*4882a593SmuzhiyunModule snd-au8810, snd-au8820, snd-au8830 305*4882a593Smuzhiyun----------------------------------------- 306*4882a593Smuzhiyun 307*4882a593SmuzhiyunModule for Aureal Vortex, Vortex2 and Advantage device. 308*4882a593Smuzhiyun 309*4882a593Smuzhiyunpcifix 310*4882a593Smuzhiyun Control PCI workarounds; 311*4882a593Smuzhiyun 0 = Disable all workarounds, 312*4882a593Smuzhiyun 1 = Force the PCI latency of the Aureal card to 0xff, 313*4882a593Smuzhiyun 2 = Force the Extend PCI#2 Internal Master for Efficient 314*4882a593Smuzhiyun Handling of Dummy Requests on the VIA KT133 AGP Bridge, 315*4882a593Smuzhiyun 3 = Force both settings, 316*4882a593Smuzhiyun 255 = Autodetect what is required (default) 317*4882a593Smuzhiyun 318*4882a593SmuzhiyunThis module supports all ADB PCM channels, ac97 mixer, SPDIF, hardware 319*4882a593SmuzhiyunEQ, mpu401, gameport. A3D and wavetable support are still in development. 320*4882a593SmuzhiyunDevelopment and reverse engineering work is being coordinated at 321*4882a593Smuzhiyunhttps://savannah.nongnu.org/projects/openvortex/ 322*4882a593SmuzhiyunSPDIF output has a copy of the AC97 codec output, unless you use the 323*4882a593Smuzhiyun``spdif`` pcm device, which allows raw data passthru. 324*4882a593SmuzhiyunThe hardware EQ hardware and SPDIF is only present in the Vortex2 and 325*4882a593SmuzhiyunAdvantage. 326*4882a593Smuzhiyun 327*4882a593SmuzhiyunNote: Some ALSA mixer applications don't handle the SPDIF sample rate 328*4882a593Smuzhiyuncontrol correctly. If you have problems regarding this, try 329*4882a593Smuzhiyunanother ALSA compliant mixer (alsamixer works). 330*4882a593Smuzhiyun 331*4882a593SmuzhiyunModule snd-azt1605 332*4882a593Smuzhiyun------------------ 333*4882a593Smuzhiyun 334*4882a593SmuzhiyunModule for Aztech Sound Galaxy soundcards based on the Aztech AZT1605 335*4882a593Smuzhiyunchipset. 336*4882a593Smuzhiyun 337*4882a593Smuzhiyunport 338*4882a593Smuzhiyun port # for BASE (0x220,0x240,0x260,0x280) 339*4882a593Smuzhiyunwss_port 340*4882a593Smuzhiyun port # for WSS (0x530,0x604,0xe80,0xf40) 341*4882a593Smuzhiyunirq 342*4882a593Smuzhiyun IRQ # for WSS (7,9,10,11) 343*4882a593Smuzhiyundma1 344*4882a593Smuzhiyun DMA # for WSS playback (0,1,3) 345*4882a593Smuzhiyundma2 346*4882a593Smuzhiyun DMA # for WSS capture (0,1), -1 = disabled (default) 347*4882a593Smuzhiyunmpu_port 348*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x330), -1 = disabled (default) 349*4882a593Smuzhiyunmpu_irq 350*4882a593Smuzhiyun IRQ # for MPU-401 UART (3,5,7,9), -1 = disabled (default) 351*4882a593Smuzhiyunfm_port 352*4882a593Smuzhiyun port # for OPL3 (0x388), -1 = disabled (default) 353*4882a593Smuzhiyun 354*4882a593SmuzhiyunThis module supports multiple cards. It does not support autoprobe: 355*4882a593Smuzhiyun``port``, ``wss_port``, ``irq`` and ``dma1`` have to be specified. 356*4882a593SmuzhiyunThe other values are optional. 357*4882a593Smuzhiyun 358*4882a593Smuzhiyun``port`` needs to match the BASE ADDRESS jumper on the card (0x220 or 0x240) 359*4882a593Smuzhiyunor the value stored in the card's EEPROM for cards that have an EEPROM and 360*4882a593Smuzhiyuntheir "CONFIG MODE" jumper set to "EEPROM SETTING". The other values can 361*4882a593Smuzhiyunbe chosen freely from the options enumerated above. 362*4882a593Smuzhiyun 363*4882a593SmuzhiyunIf ``dma2`` is specified and different from ``dma1``, the card will operate in 364*4882a593Smuzhiyunfull-duplex mode. When ``dma1=3``, only ``dma2=0`` is valid and the only way to 365*4882a593Smuzhiyunenable capture since only channels 0 and 1 are available for capture. 366*4882a593Smuzhiyun 367*4882a593SmuzhiyunGeneric settings are ``port=0x220 wss_port=0x530 irq=10 dma1=1 dma2=0 368*4882a593Smuzhiyunmpu_port=0x330 mpu_irq=9 fm_port=0x388``. 369*4882a593Smuzhiyun 370*4882a593SmuzhiyunWhatever IRQ and DMA channels you pick, be sure to reserve them for 371*4882a593Smuzhiyunlegacy ISA in your BIOS. 372*4882a593Smuzhiyun 373*4882a593SmuzhiyunModule snd-azt2316 374*4882a593Smuzhiyun------------------ 375*4882a593Smuzhiyun 376*4882a593SmuzhiyunModule for Aztech Sound Galaxy soundcards based on the Aztech AZT2316 377*4882a593Smuzhiyunchipset. 378*4882a593Smuzhiyun 379*4882a593Smuzhiyunport 380*4882a593Smuzhiyun port # for BASE (0x220,0x240,0x260,0x280) 381*4882a593Smuzhiyunwss_port 382*4882a593Smuzhiyun port # for WSS (0x530,0x604,0xe80,0xf40) 383*4882a593Smuzhiyunirq 384*4882a593Smuzhiyun IRQ # for WSS (7,9,10,11) 385*4882a593Smuzhiyundma1 386*4882a593Smuzhiyun DMA # for WSS playback (0,1,3) 387*4882a593Smuzhiyundma2 388*4882a593Smuzhiyun DMA # for WSS capture (0,1), -1 = disabled (default) 389*4882a593Smuzhiyunmpu_port 390*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x330), -1 = disabled (default) 391*4882a593Smuzhiyunmpu_irq 392*4882a593Smuzhiyun IRQ # for MPU-401 UART (5,7,9,10), -1 = disabled (default) 393*4882a593Smuzhiyunfm_port 394*4882a593Smuzhiyun port # for OPL3 (0x388), -1 = disabled (default) 395*4882a593Smuzhiyun 396*4882a593SmuzhiyunThis module supports multiple cards. It does not support autoprobe: 397*4882a593Smuzhiyun``port``, ``wss_port``, ``irq`` and ``dma1`` have to be specified. 398*4882a593SmuzhiyunThe other values are optional. 399*4882a593Smuzhiyun 400*4882a593Smuzhiyun``port`` needs to match the BASE ADDRESS jumper on the card (0x220 or 0x240) 401*4882a593Smuzhiyunor the value stored in the card's EEPROM for cards that have an EEPROM and 402*4882a593Smuzhiyuntheir "CONFIG MODE" jumper set to "EEPROM SETTING". The other values can 403*4882a593Smuzhiyunbe chosen freely from the options enumerated above. 404*4882a593Smuzhiyun 405*4882a593SmuzhiyunIf ``dma2`` is specified and different from ``dma1``, the card will operate in 406*4882a593Smuzhiyunfull-duplex mode. When ``dma1=3``, only ``dma2=0`` is valid and the only way to 407*4882a593Smuzhiyunenable capture since only channels 0 and 1 are available for capture. 408*4882a593Smuzhiyun 409*4882a593SmuzhiyunGeneric settings are ``port=0x220 wss_port=0x530 irq=10 dma1=1 dma2=0 410*4882a593Smuzhiyunmpu_port=0x330 mpu_irq=9 fm_port=0x388``. 411*4882a593Smuzhiyun 412*4882a593SmuzhiyunWhatever IRQ and DMA channels you pick, be sure to reserve them for 413*4882a593Smuzhiyunlegacy ISA in your BIOS. 414*4882a593Smuzhiyun 415*4882a593SmuzhiyunModule snd-aw2 416*4882a593Smuzhiyun-------------- 417*4882a593Smuzhiyun 418*4882a593SmuzhiyunModule for Audiowerk2 sound card 419*4882a593Smuzhiyun 420*4882a593SmuzhiyunThis module supports multiple cards. 421*4882a593Smuzhiyun 422*4882a593SmuzhiyunModule snd-azt2320 423*4882a593Smuzhiyun------------------ 424*4882a593Smuzhiyun 425*4882a593SmuzhiyunModule for sound cards based on Aztech System AZT2320 ISA chip (PnP only). 426*4882a593Smuzhiyun 427*4882a593SmuzhiyunThis module supports multiple cards, PnP and autoprobe. 428*4882a593Smuzhiyun 429*4882a593SmuzhiyunThe power-management is supported. 430*4882a593Smuzhiyun 431*4882a593SmuzhiyunModule snd-azt3328 432*4882a593Smuzhiyun------------------ 433*4882a593Smuzhiyun 434*4882a593SmuzhiyunModule for sound cards based on Aztech AZF3328 PCI chip. 435*4882a593Smuzhiyun 436*4882a593Smuzhiyunjoystick 437*4882a593Smuzhiyun Enable joystick (default off) 438*4882a593Smuzhiyun 439*4882a593SmuzhiyunThis module supports multiple cards. 440*4882a593Smuzhiyun 441*4882a593SmuzhiyunModule snd-bt87x 442*4882a593Smuzhiyun---------------- 443*4882a593Smuzhiyun 444*4882a593SmuzhiyunModule for video cards based on Bt87x chips. 445*4882a593Smuzhiyun 446*4882a593Smuzhiyundigital_rate 447*4882a593Smuzhiyun Override the default digital rate (Hz) 448*4882a593Smuzhiyunload_all 449*4882a593Smuzhiyun Load the driver even if the card model isn't known 450*4882a593Smuzhiyun 451*4882a593SmuzhiyunThis module supports multiple cards. 452*4882a593Smuzhiyun 453*4882a593SmuzhiyunNote: The default index value of this module is -2, i.e. the first 454*4882a593Smuzhiyunslot is excluded. 455*4882a593Smuzhiyun 456*4882a593SmuzhiyunModule snd-ca0106 457*4882a593Smuzhiyun----------------- 458*4882a593Smuzhiyun 459*4882a593SmuzhiyunModule for Creative Audigy LS and SB Live 24bit 460*4882a593Smuzhiyun 461*4882a593SmuzhiyunThis module supports multiple cards. 462*4882a593Smuzhiyun 463*4882a593Smuzhiyun 464*4882a593SmuzhiyunModule snd-cmi8330 465*4882a593Smuzhiyun------------------ 466*4882a593Smuzhiyun 467*4882a593SmuzhiyunModule for sound cards based on C-Media CMI8330 ISA chips. 468*4882a593Smuzhiyun 469*4882a593Smuzhiyunisapnp 470*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 471*4882a593Smuzhiyun 472*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 473*4882a593Smuzhiyun 474*4882a593Smuzhiyunwssport 475*4882a593Smuzhiyun port # for CMI8330 chip (WSS) 476*4882a593Smuzhiyunwssirq 477*4882a593Smuzhiyun IRQ # for CMI8330 chip (WSS) 478*4882a593Smuzhiyunwssdma 479*4882a593Smuzhiyun first DMA # for CMI8330 chip (WSS) 480*4882a593Smuzhiyunsbport 481*4882a593Smuzhiyun port # for CMI8330 chip (SB16) 482*4882a593Smuzhiyunsbirq 483*4882a593Smuzhiyun IRQ # for CMI8330 chip (SB16) 484*4882a593Smuzhiyunsbdma8 485*4882a593Smuzhiyun 8bit DMA # for CMI8330 chip (SB16) 486*4882a593Smuzhiyunsbdma16 487*4882a593Smuzhiyun 16bit DMA # for CMI8330 chip (SB16) 488*4882a593Smuzhiyunfmport 489*4882a593Smuzhiyun (optional) OPL3 I/O port 490*4882a593Smuzhiyunmpuport 491*4882a593Smuzhiyun (optional) MPU401 I/O port 492*4882a593Smuzhiyunmpuirq 493*4882a593Smuzhiyun (optional) MPU401 irq # 494*4882a593Smuzhiyun 495*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 496*4882a593Smuzhiyun 497*4882a593SmuzhiyunThe power-management is supported. 498*4882a593Smuzhiyun 499*4882a593SmuzhiyunModule snd-cmipci 500*4882a593Smuzhiyun----------------- 501*4882a593Smuzhiyun 502*4882a593SmuzhiyunModule for C-Media CMI8338/8738/8768/8770 PCI sound cards. 503*4882a593Smuzhiyun 504*4882a593Smuzhiyunmpu_port 505*4882a593Smuzhiyun port address of MIDI interface (8338 only): 506*4882a593Smuzhiyun 0x300,0x310,0x320,0x330 = legacy port, 507*4882a593Smuzhiyun 1 = integrated PCI port (default on 8738), 508*4882a593Smuzhiyun 0 = disable 509*4882a593Smuzhiyunfm_port 510*4882a593Smuzhiyun port address of OPL-3 FM synthesizer (8x38 only): 511*4882a593Smuzhiyun 0x388 = legacy port, 512*4882a593Smuzhiyun 1 = integrated PCI port (default on 8738), 513*4882a593Smuzhiyun 0 = disable 514*4882a593Smuzhiyunsoft_ac3 515*4882a593Smuzhiyun Software-conversion of raw SPDIF packets (model 033 only) (default = 1) 516*4882a593Smuzhiyunjoystick_port 517*4882a593Smuzhiyun Joystick port address (0 = disable, 1 = auto-detect) 518*4882a593Smuzhiyun 519*4882a593SmuzhiyunThis module supports autoprobe and multiple cards. 520*4882a593Smuzhiyun 521*4882a593SmuzhiyunThe power-management is supported. 522*4882a593Smuzhiyun 523*4882a593SmuzhiyunModule snd-cs4231 524*4882a593Smuzhiyun----------------- 525*4882a593Smuzhiyun 526*4882a593SmuzhiyunModule for sound cards based on CS4231 ISA chips. 527*4882a593Smuzhiyun 528*4882a593Smuzhiyunport 529*4882a593Smuzhiyun port # for CS4231 chip 530*4882a593Smuzhiyunmpu_port 531*4882a593Smuzhiyun port # for MPU-401 UART (optional), -1 = disable 532*4882a593Smuzhiyunirq 533*4882a593Smuzhiyun IRQ # for CS4231 chip 534*4882a593Smuzhiyunmpu_irq 535*4882a593Smuzhiyun IRQ # for MPU-401 UART 536*4882a593Smuzhiyundma1 537*4882a593Smuzhiyun first DMA # for CS4231 chip 538*4882a593Smuzhiyundma2 539*4882a593Smuzhiyun second DMA # for CS4231 chip 540*4882a593Smuzhiyun 541*4882a593SmuzhiyunThis module supports multiple cards. This module does not support autoprobe 542*4882a593Smuzhiyunthus main port must be specified!!! Other ports are optional. 543*4882a593Smuzhiyun 544*4882a593SmuzhiyunThe power-management is supported. 545*4882a593Smuzhiyun 546*4882a593SmuzhiyunModule snd-cs4236 547*4882a593Smuzhiyun----------------- 548*4882a593Smuzhiyun 549*4882a593SmuzhiyunModule for sound cards based on CS4232/CS4232A, 550*4882a593SmuzhiyunCS4235/CS4236/CS4236B/CS4237B/CS4238B/CS4239 ISA chips. 551*4882a593Smuzhiyun 552*4882a593Smuzhiyunisapnp 553*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 554*4882a593Smuzhiyun 555*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 556*4882a593Smuzhiyun 557*4882a593Smuzhiyunport 558*4882a593Smuzhiyun port # for CS4236 chip (PnP setup - 0x534) 559*4882a593Smuzhiyuncport 560*4882a593Smuzhiyun control port # for CS4236 chip (PnP setup - 0x120,0x210,0xf00) 561*4882a593Smuzhiyunmpu_port 562*4882a593Smuzhiyun port # for MPU-401 UART (PnP setup - 0x300), -1 = disable 563*4882a593Smuzhiyunfm_port 564*4882a593Smuzhiyun FM port # for CS4236 chip (PnP setup - 0x388), -1 = disable 565*4882a593Smuzhiyunirq 566*4882a593Smuzhiyun IRQ # for CS4236 chip (5,7,9,11,12,15) 567*4882a593Smuzhiyunmpu_irq 568*4882a593Smuzhiyun IRQ # for MPU-401 UART (9,11,12,15) 569*4882a593Smuzhiyundma1 570*4882a593Smuzhiyun first DMA # for CS4236 chip (0,1,3) 571*4882a593Smuzhiyundma2 572*4882a593Smuzhiyun second DMA # for CS4236 chip (0,1,3), -1 = disable 573*4882a593Smuzhiyun 574*4882a593SmuzhiyunThis module supports multiple cards. This module does not support autoprobe 575*4882a593Smuzhiyun(if ISA PnP is not used) thus main port and control port must be 576*4882a593Smuzhiyunspecified!!! Other ports are optional. 577*4882a593Smuzhiyun 578*4882a593SmuzhiyunThe power-management is supported. 579*4882a593Smuzhiyun 580*4882a593SmuzhiyunThis module is aliased as snd-cs4232 since it provides the old 581*4882a593Smuzhiyunsnd-cs4232 functionality, too. 582*4882a593Smuzhiyun 583*4882a593SmuzhiyunModule snd-cs4281 584*4882a593Smuzhiyun----------------- 585*4882a593Smuzhiyun 586*4882a593SmuzhiyunModule for Cirrus Logic CS4281 soundchip. 587*4882a593Smuzhiyun 588*4882a593Smuzhiyundual_codec 589*4882a593Smuzhiyun Secondary codec ID (0 = disable, default) 590*4882a593Smuzhiyun 591*4882a593SmuzhiyunThis module supports multiple cards. 592*4882a593Smuzhiyun 593*4882a593SmuzhiyunThe power-management is supported. 594*4882a593Smuzhiyun 595*4882a593SmuzhiyunModule snd-cs46xx 596*4882a593Smuzhiyun----------------- 597*4882a593Smuzhiyun 598*4882a593SmuzhiyunModule for PCI sound cards based on CS4610/CS4612/CS4614/CS4615/CS4622/ 599*4882a593SmuzhiyunCS4624/CS4630/CS4280 PCI chips. 600*4882a593Smuzhiyun 601*4882a593Smuzhiyunexternal_amp 602*4882a593Smuzhiyun Force to enable external amplifier. 603*4882a593Smuzhiyunthinkpad 604*4882a593Smuzhiyun Force to enable Thinkpad's CLKRUN control. 605*4882a593Smuzhiyunmmap_valid 606*4882a593Smuzhiyun Support OSS mmap mode (default = 0). 607*4882a593Smuzhiyun 608*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 609*4882a593SmuzhiyunUsually external amp and CLKRUN controls are detected automatically 610*4882a593Smuzhiyunfrom PCI sub vendor/device ids. If they don't work, give the options 611*4882a593Smuzhiyunabove explicitly. 612*4882a593Smuzhiyun 613*4882a593SmuzhiyunThe power-management is supported. 614*4882a593Smuzhiyun 615*4882a593SmuzhiyunModule snd-cs5530 616*4882a593Smuzhiyun----------------- 617*4882a593Smuzhiyun 618*4882a593SmuzhiyunModule for Cyrix/NatSemi Geode 5530 chip. 619*4882a593Smuzhiyun 620*4882a593SmuzhiyunModule snd-cs5535audio 621*4882a593Smuzhiyun---------------------- 622*4882a593Smuzhiyun 623*4882a593SmuzhiyunModule for multifunction CS5535 companion PCI device 624*4882a593Smuzhiyun 625*4882a593SmuzhiyunThe power-management is supported. 626*4882a593Smuzhiyun 627*4882a593SmuzhiyunModule snd-ctxfi 628*4882a593Smuzhiyun---------------- 629*4882a593Smuzhiyun 630*4882a593SmuzhiyunModule for Creative Sound Blaster X-Fi boards (20k1 / 20k2 chips) 631*4882a593Smuzhiyun 632*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Titanium Fatal1ty Champion Series 633*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Titanium Fatal1ty Professional Series 634*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Titanium Professional Audio 635*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Titanium 636*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Elite Pro 637*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Platinum 638*4882a593Smuzhiyun* Creative Sound Blaster X-Fi Fatal1ty 639*4882a593Smuzhiyun* Creative Sound Blaster X-Fi XtremeGamer 640*4882a593Smuzhiyun* Creative Sound Blaster X-Fi XtremeMusic 641*4882a593Smuzhiyun 642*4882a593Smuzhiyunreference_rate 643*4882a593Smuzhiyun reference sample rate, 44100 or 48000 (default) 644*4882a593Smuzhiyunmultiple 645*4882a593Smuzhiyun multiple to ref. sample rate, 1 or 2 (default) 646*4882a593Smuzhiyunsubsystem 647*4882a593Smuzhiyun override the PCI SSID for probing; 648*4882a593Smuzhiyun the value consists of SSVID << 16 | SSDID. 649*4882a593Smuzhiyun The default is zero, which means no override. 650*4882a593Smuzhiyun 651*4882a593SmuzhiyunThis module supports multiple cards. 652*4882a593Smuzhiyun 653*4882a593SmuzhiyunModule snd-darla20 654*4882a593Smuzhiyun------------------ 655*4882a593Smuzhiyun 656*4882a593SmuzhiyunModule for Echoaudio Darla20 657*4882a593Smuzhiyun 658*4882a593SmuzhiyunThis module supports multiple cards. 659*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 660*4882a593Smuzhiyun 661*4882a593SmuzhiyunModule snd-darla24 662*4882a593Smuzhiyun------------------ 663*4882a593Smuzhiyun 664*4882a593SmuzhiyunModule for Echoaudio Darla24 665*4882a593Smuzhiyun 666*4882a593SmuzhiyunThis module supports multiple cards. 667*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 668*4882a593Smuzhiyun 669*4882a593SmuzhiyunModule snd-dt019x 670*4882a593Smuzhiyun----------------- 671*4882a593Smuzhiyun 672*4882a593SmuzhiyunModule for Diamond Technologies DT-019X / Avance Logic ALS-007 (PnP 673*4882a593Smuzhiyunonly) 674*4882a593Smuzhiyun 675*4882a593SmuzhiyunThis module supports multiple cards. This module is enabled only with 676*4882a593SmuzhiyunISA PnP support. 677*4882a593Smuzhiyun 678*4882a593SmuzhiyunThe power-management is supported. 679*4882a593Smuzhiyun 680*4882a593SmuzhiyunModule snd-dummy 681*4882a593Smuzhiyun---------------- 682*4882a593Smuzhiyun 683*4882a593SmuzhiyunModule for the dummy sound card. This "card" doesn't do any output 684*4882a593Smuzhiyunor input, but you may use this module for any application which 685*4882a593Smuzhiyunrequires a sound card (like RealPlayer). 686*4882a593Smuzhiyun 687*4882a593Smuzhiyunpcm_devs 688*4882a593Smuzhiyun Number of PCM devices assigned to each card (default = 1, up to 4) 689*4882a593Smuzhiyunpcm_substreams 690*4882a593Smuzhiyun Number of PCM substreams assigned to each PCM (default = 8, up to 128) 691*4882a593Smuzhiyunhrtimer 692*4882a593Smuzhiyun Use hrtimer (=1, default) or system timer (=0) 693*4882a593Smuzhiyunfake_buffer 694*4882a593Smuzhiyun Fake buffer allocations (default = 1) 695*4882a593Smuzhiyun 696*4882a593SmuzhiyunWhen multiple PCM devices are created, snd-dummy gives different 697*4882a593Smuzhiyunbehavior to each PCM device: 698*4882a593Smuzhiyun* 0 = interleaved with mmap support 699*4882a593Smuzhiyun* 1 = non-interleaved with mmap support 700*4882a593Smuzhiyun* 2 = interleaved without mmap 701*4882a593Smuzhiyun* 3 = non-interleaved without mmap 702*4882a593Smuzhiyun 703*4882a593SmuzhiyunAs default, snd-dummy drivers doesn't allocate the real buffers 704*4882a593Smuzhiyunbut either ignores read/write or mmap a single dummy page to all 705*4882a593Smuzhiyunbuffer pages, in order to save the resources. If your apps need 706*4882a593Smuzhiyunthe read/ written buffer data to be consistent, pass fake_buffer=0 707*4882a593Smuzhiyunoption. 708*4882a593Smuzhiyun 709*4882a593SmuzhiyunThe power-management is supported. 710*4882a593Smuzhiyun 711*4882a593SmuzhiyunModule snd-echo3g 712*4882a593Smuzhiyun----------------- 713*4882a593Smuzhiyun 714*4882a593SmuzhiyunModule for Echoaudio 3G cards (Gina3G/Layla3G) 715*4882a593Smuzhiyun 716*4882a593SmuzhiyunThis module supports multiple cards. 717*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 718*4882a593Smuzhiyun 719*4882a593SmuzhiyunModule snd-emu10k1 720*4882a593Smuzhiyun------------------ 721*4882a593Smuzhiyun 722*4882a593SmuzhiyunModule for EMU10K1/EMU10k2 based PCI sound cards. 723*4882a593Smuzhiyun 724*4882a593Smuzhiyun* Sound Blaster Live! 725*4882a593Smuzhiyun* Sound Blaster PCI 512 726*4882a593Smuzhiyun* Emu APS (partially supported) 727*4882a593Smuzhiyun* Sound Blaster Audigy 728*4882a593Smuzhiyun 729*4882a593Smuzhiyunextin 730*4882a593Smuzhiyun bitmap of available external inputs for FX8010 (see bellow) 731*4882a593Smuzhiyunextout 732*4882a593Smuzhiyun bitmap of available external outputs for FX8010 (see bellow) 733*4882a593Smuzhiyunseq_ports 734*4882a593Smuzhiyun allocated sequencer ports (4 by default) 735*4882a593Smuzhiyunmax_synth_voices 736*4882a593Smuzhiyun limit of voices used for wavetable (64 by default) 737*4882a593Smuzhiyunmax_buffer_size 738*4882a593Smuzhiyun specifies the maximum size of wavetable/pcm buffers given in MB 739*4882a593Smuzhiyun unit. Default value is 128. 740*4882a593Smuzhiyunenable_ir 741*4882a593Smuzhiyun enable IR 742*4882a593Smuzhiyun 743*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 744*4882a593Smuzhiyun 745*4882a593SmuzhiyunInput & Output configurations [extin/extout] 746*4882a593Smuzhiyun* Creative Card wo/Digital out [0x0003/0x1f03] 747*4882a593Smuzhiyun* Creative Card w/Digital out [0x0003/0x1f0f] 748*4882a593Smuzhiyun* Creative Card w/Digital CD in [0x000f/0x1f0f] 749*4882a593Smuzhiyun* Creative Card wo/Digital out + LiveDrive [0x3fc3/0x1fc3] 750*4882a593Smuzhiyun* Creative Card w/Digital out + LiveDrive [0x3fc3/0x1fcf] 751*4882a593Smuzhiyun* Creative Card w/Digital CD in + LiveDrive [0x3fcf/0x1fcf] 752*4882a593Smuzhiyun* Creative Card wo/Digital out + Digital I/O 2 [0x0fc3/0x1f0f] 753*4882a593Smuzhiyun* Creative Card w/Digital out + Digital I/O 2 [0x0fc3/0x1f0f] 754*4882a593Smuzhiyun* Creative Card w/Digital CD in + Digital I/O 2 [0x0fcf/0x1f0f] 755*4882a593Smuzhiyun* Creative Card 5.1/w Digital out + LiveDrive [0x3fc3/0x1fff] 756*4882a593Smuzhiyun* Creative Card 5.1 (c) 2003 [0x3fc3/0x7cff] 757*4882a593Smuzhiyun* Creative Card all ins and outs [0x3fff/0x7fff] 758*4882a593Smuzhiyun 759*4882a593SmuzhiyunThe power-management is supported. 760*4882a593Smuzhiyun 761*4882a593SmuzhiyunModule snd-emu10k1x 762*4882a593Smuzhiyun------------------- 763*4882a593Smuzhiyun 764*4882a593SmuzhiyunModule for Creative Emu10k1X (SB Live Dell OEM version) 765*4882a593Smuzhiyun 766*4882a593SmuzhiyunThis module supports multiple cards. 767*4882a593Smuzhiyun 768*4882a593SmuzhiyunModule snd-ens1370 769*4882a593Smuzhiyun------------------ 770*4882a593Smuzhiyun 771*4882a593SmuzhiyunModule for Ensoniq AudioPCI ES1370 PCI sound cards. 772*4882a593Smuzhiyun 773*4882a593Smuzhiyun* SoundBlaster PCI 64 774*4882a593Smuzhiyun* SoundBlaster PCI 128 775*4882a593Smuzhiyun 776*4882a593Smuzhiyunjoystick 777*4882a593Smuzhiyun Enable joystick (default off) 778*4882a593Smuzhiyun 779*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 780*4882a593Smuzhiyun 781*4882a593SmuzhiyunThe power-management is supported. 782*4882a593Smuzhiyun 783*4882a593SmuzhiyunModule snd-ens1371 784*4882a593Smuzhiyun------------------ 785*4882a593Smuzhiyun 786*4882a593SmuzhiyunModule for Ensoniq AudioPCI ES1371 PCI sound cards. 787*4882a593Smuzhiyun 788*4882a593Smuzhiyun* SoundBlaster PCI 64 789*4882a593Smuzhiyun* SoundBlaster PCI 128 790*4882a593Smuzhiyun* SoundBlaster Vibra PCI 791*4882a593Smuzhiyun 792*4882a593Smuzhiyunjoystick_port 793*4882a593Smuzhiyun port # for joystick (0x200,0x208,0x210,0x218), 0 = disable 794*4882a593Smuzhiyun (default), 1 = auto-detect 795*4882a593Smuzhiyun 796*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 797*4882a593Smuzhiyun 798*4882a593SmuzhiyunThe power-management is supported. 799*4882a593Smuzhiyun 800*4882a593SmuzhiyunModule snd-es1688 801*4882a593Smuzhiyun----------------- 802*4882a593Smuzhiyun 803*4882a593SmuzhiyunModule for ESS AudioDrive ES-1688 and ES-688 sound cards. 804*4882a593Smuzhiyun 805*4882a593Smuzhiyunisapnp 806*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 807*4882a593Smuzhiyunmpu_port 808*4882a593Smuzhiyun port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default) 809*4882a593Smuzhiyunmpu_irq 810*4882a593Smuzhiyun IRQ # for MPU-401 port (5,7,9,10) 811*4882a593Smuzhiyunfm_port 812*4882a593Smuzhiyun port # for OPL3 (option; share the same port as default) 813*4882a593Smuzhiyun 814*4882a593Smuzhiyunwith ``isapnp=0``, the following additional options are available: 815*4882a593Smuzhiyun 816*4882a593Smuzhiyunport 817*4882a593Smuzhiyun port # for ES-1688 chip (0x220,0x240,0x260) 818*4882a593Smuzhiyunirq 819*4882a593Smuzhiyun IRQ # for ES-1688 chip (5,7,9,10) 820*4882a593Smuzhiyundma8 821*4882a593Smuzhiyun DMA # for ES-1688 chip (0,1,3) 822*4882a593Smuzhiyun 823*4882a593SmuzhiyunThis module supports multiple cards and autoprobe (without MPU-401 port) 824*4882a593Smuzhiyunand PnP with the ES968 chip. 825*4882a593Smuzhiyun 826*4882a593SmuzhiyunModule snd-es18xx 827*4882a593Smuzhiyun----------------- 828*4882a593Smuzhiyun 829*4882a593SmuzhiyunModule for ESS AudioDrive ES-18xx sound cards. 830*4882a593Smuzhiyun 831*4882a593Smuzhiyunisapnp 832*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 833*4882a593Smuzhiyun 834*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 835*4882a593Smuzhiyun 836*4882a593Smuzhiyunport 837*4882a593Smuzhiyun port # for ES-18xx chip (0x220,0x240,0x260) 838*4882a593Smuzhiyunmpu_port 839*4882a593Smuzhiyun port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable (default) 840*4882a593Smuzhiyunfm_port 841*4882a593Smuzhiyun port # for FM (optional, not used) 842*4882a593Smuzhiyunirq 843*4882a593Smuzhiyun IRQ # for ES-18xx chip (5,7,9,10) 844*4882a593Smuzhiyundma1 845*4882a593Smuzhiyun first DMA # for ES-18xx chip (0,1,3) 846*4882a593Smuzhiyundma2 847*4882a593Smuzhiyun first DMA # for ES-18xx chip (0,1,3) 848*4882a593Smuzhiyun 849*4882a593SmuzhiyunThis module supports multiple cards, ISA PnP and autoprobe (without MPU-401 850*4882a593Smuzhiyunport if native ISA PnP routines are not used). 851*4882a593SmuzhiyunWhen ``dma2`` is equal with ``dma1``, the driver works as half-duplex. 852*4882a593Smuzhiyun 853*4882a593SmuzhiyunThe power-management is supported. 854*4882a593Smuzhiyun 855*4882a593SmuzhiyunModule snd-es1938 856*4882a593Smuzhiyun----------------- 857*4882a593Smuzhiyun 858*4882a593SmuzhiyunModule for sound cards based on ESS Solo-1 (ES1938,ES1946) chips. 859*4882a593Smuzhiyun 860*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 861*4882a593Smuzhiyun 862*4882a593SmuzhiyunThe power-management is supported. 863*4882a593Smuzhiyun 864*4882a593SmuzhiyunModule snd-es1968 865*4882a593Smuzhiyun----------------- 866*4882a593Smuzhiyun 867*4882a593SmuzhiyunModule for sound cards based on ESS Maestro-1/2/2E (ES1968/ES1978) chips. 868*4882a593Smuzhiyun 869*4882a593Smuzhiyuntotal_bufsize 870*4882a593Smuzhiyun total buffer size in kB (1-4096kB) 871*4882a593Smuzhiyunpcm_substreams_p 872*4882a593Smuzhiyun playback channels (1-8, default=2) 873*4882a593Smuzhiyunpcm_substreams_c 874*4882a593Smuzhiyun capture channels (1-8, default=0) 875*4882a593Smuzhiyunclock 876*4882a593Smuzhiyun clock (0 = auto-detection) 877*4882a593Smuzhiyunuse_pm 878*4882a593Smuzhiyun support the power-management (0 = off, 1 = on, 2 = auto (default)) 879*4882a593Smuzhiyunenable_mpu 880*4882a593Smuzhiyun enable MPU401 (0 = off, 1 = on, 2 = auto (default)) 881*4882a593Smuzhiyunjoystick 882*4882a593Smuzhiyun enable joystick (default off) 883*4882a593Smuzhiyun 884*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 885*4882a593Smuzhiyun 886*4882a593SmuzhiyunThe power-management is supported. 887*4882a593Smuzhiyun 888*4882a593SmuzhiyunModule snd-fm801 889*4882a593Smuzhiyun---------------- 890*4882a593Smuzhiyun 891*4882a593SmuzhiyunModule for ForteMedia FM801 based PCI sound cards. 892*4882a593Smuzhiyun 893*4882a593Smuzhiyuntea575x_tuner 894*4882a593Smuzhiyun Enable TEA575x tuner; 895*4882a593Smuzhiyun 1 = MediaForte 256-PCS, 896*4882a593Smuzhiyun 2 = MediaForte 256-PCPR, 897*4882a593Smuzhiyun 3 = MediaForte 64-PCR 898*4882a593Smuzhiyun High 16-bits are video (radio) device number + 1; 899*4882a593Smuzhiyun example: 0x10002 (MediaForte 256-PCPR, device 1) 900*4882a593Smuzhiyun 901*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 902*4882a593Smuzhiyun 903*4882a593SmuzhiyunThe power-management is supported. 904*4882a593Smuzhiyun 905*4882a593SmuzhiyunModule snd-gina20 906*4882a593Smuzhiyun----------------- 907*4882a593Smuzhiyun 908*4882a593SmuzhiyunModule for Echoaudio Gina20 909*4882a593Smuzhiyun 910*4882a593SmuzhiyunThis module supports multiple cards. 911*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 912*4882a593Smuzhiyun 913*4882a593SmuzhiyunModule snd-gina24 914*4882a593Smuzhiyun----------------- 915*4882a593Smuzhiyun 916*4882a593SmuzhiyunModule for Echoaudio Gina24 917*4882a593Smuzhiyun 918*4882a593SmuzhiyunThis module supports multiple cards. 919*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 920*4882a593Smuzhiyun 921*4882a593SmuzhiyunModule snd-gusclassic 922*4882a593Smuzhiyun--------------------- 923*4882a593Smuzhiyun 924*4882a593SmuzhiyunModule for Gravis UltraSound Classic sound card. 925*4882a593Smuzhiyun 926*4882a593Smuzhiyunport 927*4882a593Smuzhiyun port # for GF1 chip (0x220,0x230,0x240,0x250,0x260) 928*4882a593Smuzhiyunirq 929*4882a593Smuzhiyun IRQ # for GF1 chip (3,5,9,11,12,15) 930*4882a593Smuzhiyundma1 931*4882a593Smuzhiyun DMA # for GF1 chip (1,3,5,6,7) 932*4882a593Smuzhiyundma2 933*4882a593Smuzhiyun DMA # for GF1 chip (1,3,5,6,7,-1=disable) 934*4882a593Smuzhiyunjoystick_dac 935*4882a593Smuzhiyun 0 to 31, (0.59V-4.52V or 0.389V-2.98V) 936*4882a593Smuzhiyunvoices 937*4882a593Smuzhiyun GF1 voices limit (14-32) 938*4882a593Smuzhiyunpcm_voices 939*4882a593Smuzhiyun reserved PCM voices 940*4882a593Smuzhiyun 941*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 942*4882a593Smuzhiyun 943*4882a593SmuzhiyunModule snd-gusextreme 944*4882a593Smuzhiyun--------------------- 945*4882a593Smuzhiyun 946*4882a593SmuzhiyunModule for Gravis UltraSound Extreme (Synergy ViperMax) sound card. 947*4882a593Smuzhiyun 948*4882a593Smuzhiyunport 949*4882a593Smuzhiyun port # for ES-1688 chip (0x220,0x230,0x240,0x250,0x260) 950*4882a593Smuzhiyungf1_port 951*4882a593Smuzhiyun port # for GF1 chip (0x210,0x220,0x230,0x240,0x250,0x260,0x270) 952*4882a593Smuzhiyunmpu_port 953*4882a593Smuzhiyun port # for MPU-401 port (0x300,0x310,0x320,0x330), -1 = disable 954*4882a593Smuzhiyunirq 955*4882a593Smuzhiyun IRQ # for ES-1688 chip (5,7,9,10) 956*4882a593Smuzhiyungf1_irq 957*4882a593Smuzhiyun IRQ # for GF1 chip (3,5,9,11,12,15) 958*4882a593Smuzhiyunmpu_irq 959*4882a593Smuzhiyun IRQ # for MPU-401 port (5,7,9,10) 960*4882a593Smuzhiyundma8 961*4882a593Smuzhiyun DMA # for ES-1688 chip (0,1,3) 962*4882a593Smuzhiyundma1 963*4882a593Smuzhiyun DMA # for GF1 chip (1,3,5,6,7) 964*4882a593Smuzhiyunjoystick_dac 965*4882a593Smuzhiyun 0 to 31, (0.59V-4.52V or 0.389V-2.98V) 966*4882a593Smuzhiyunvoices 967*4882a593Smuzhiyun GF1 voices limit (14-32) 968*4882a593Smuzhiyunpcm_voices 969*4882a593Smuzhiyun reserved PCM voices 970*4882a593Smuzhiyun 971*4882a593SmuzhiyunThis module supports multiple cards and autoprobe (without MPU-401 port). 972*4882a593Smuzhiyun 973*4882a593SmuzhiyunModule snd-gusmax 974*4882a593Smuzhiyun----------------- 975*4882a593Smuzhiyun 976*4882a593SmuzhiyunModule for Gravis UltraSound MAX sound card. 977*4882a593Smuzhiyun 978*4882a593Smuzhiyunport 979*4882a593Smuzhiyun port # for GF1 chip (0x220,0x230,0x240,0x250,0x260) 980*4882a593Smuzhiyunirq 981*4882a593Smuzhiyun IRQ # for GF1 chip (3,5,9,11,12,15) 982*4882a593Smuzhiyundma1 983*4882a593Smuzhiyun DMA # for GF1 chip (1,3,5,6,7) 984*4882a593Smuzhiyundma2 985*4882a593Smuzhiyun DMA # for GF1 chip (1,3,5,6,7,-1=disable) 986*4882a593Smuzhiyunjoystick_dac 987*4882a593Smuzhiyun 0 to 31, (0.59V-4.52V or 0.389V-2.98V) 988*4882a593Smuzhiyunvoices 989*4882a593Smuzhiyun GF1 voices limit (14-32) 990*4882a593Smuzhiyunpcm_voices 991*4882a593Smuzhiyun reserved PCM voices 992*4882a593Smuzhiyun 993*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 994*4882a593Smuzhiyun 995*4882a593SmuzhiyunModule snd-hda-intel 996*4882a593Smuzhiyun-------------------- 997*4882a593Smuzhiyun 998*4882a593SmuzhiyunModule for Intel HD Audio (ICH6, ICH6M, ESB2, ICH7, ICH8, ICH9, ICH10, 999*4882a593SmuzhiyunPCH, SCH), ATI SB450, SB600, R600, RS600, RS690, RS780, RV610, RV620, 1000*4882a593SmuzhiyunRV630, RV635, RV670, RV770, VIA VT8251/VT8237A, SIS966, ULI M5461 1001*4882a593Smuzhiyun 1002*4882a593Smuzhiyun[Multiple options for each card instance] 1003*4882a593Smuzhiyun 1004*4882a593Smuzhiyunmodel 1005*4882a593Smuzhiyun force the model name 1006*4882a593Smuzhiyunposition_fix 1007*4882a593Smuzhiyun Fix DMA pointer; 1008*4882a593Smuzhiyun -1 = system default: choose appropriate one per controller hardware, 1009*4882a593Smuzhiyun 0 = auto: falls back to LPIB when POSBUF doesn't work, 1010*4882a593Smuzhiyun 1 = use LPIB, 1011*4882a593Smuzhiyun 2 = POSBUF: use position buffer, 1012*4882a593Smuzhiyun 3 = VIACOMBO: VIA-specific workaround for capture, 1013*4882a593Smuzhiyun 4 = COMBO: use LPIB for playback, auto for capture stream 1014*4882a593Smuzhiyun 5 = SKL+: apply the delay calculation available on recent Intel chips 1015*4882a593Smuzhiyun 6 = FIFO: correct the position with the fixed FIFO size, for recent AMD chips 1016*4882a593Smuzhiyunprobe_mask 1017*4882a593Smuzhiyun Bitmask to probe codecs (default = -1, meaning all slots); 1018*4882a593Smuzhiyun When the bit 8 (0x100) is set, the lower 8 bits are used 1019*4882a593Smuzhiyun as the "fixed" codec slots; i.e. the driver probes the 1020*4882a593Smuzhiyun slots regardless what hardware reports back 1021*4882a593Smuzhiyunprobe_only 1022*4882a593Smuzhiyun Only probing and no codec initialization (default=off); 1023*4882a593Smuzhiyun Useful to check the initial codec status for debugging 1024*4882a593Smuzhiyunbdl_pos_adj 1025*4882a593Smuzhiyun Specifies the DMA IRQ timing delay in samples. 1026*4882a593Smuzhiyun Passing -1 will make the driver to choose the appropriate 1027*4882a593Smuzhiyun value based on the controller chip. 1028*4882a593Smuzhiyunpatch 1029*4882a593Smuzhiyun Specifies the early "patch" files to modify the HD-audio setup 1030*4882a593Smuzhiyun before initializing the codecs. 1031*4882a593Smuzhiyun This option is available only when ``CONFIG_SND_HDA_PATCH_LOADER=y`` 1032*4882a593Smuzhiyun is set. See hd-audio/notes.rst for details. 1033*4882a593Smuzhiyunbeep_mode 1034*4882a593Smuzhiyun Selects the beep registration mode (0=off, 1=on); 1035*4882a593Smuzhiyun default value is set via ``CONFIG_SND_HDA_INPUT_BEEP_MODE`` kconfig. 1036*4882a593Smuzhiyun 1037*4882a593Smuzhiyun[Single (global) options] 1038*4882a593Smuzhiyun 1039*4882a593Smuzhiyunsingle_cmd 1040*4882a593Smuzhiyun Use single immediate commands to communicate with codecs 1041*4882a593Smuzhiyun (for debugging only) 1042*4882a593Smuzhiyunenable_msi 1043*4882a593Smuzhiyun Enable Message Signaled Interrupt (MSI) (default = off) 1044*4882a593Smuzhiyunpower_save 1045*4882a593Smuzhiyun Automatic power-saving timeout (in second, 0 = disable) 1046*4882a593Smuzhiyunpower_save_controller 1047*4882a593Smuzhiyun Reset HD-audio controller in power-saving mode (default = on) 1048*4882a593Smuzhiyunalign_buffer_size 1049*4882a593Smuzhiyun Force rounding of buffer/period sizes to multiples of 128 bytes. 1050*4882a593Smuzhiyun This is more efficient in terms of memory access but isn't 1051*4882a593Smuzhiyun required by the HDA spec and prevents users from specifying 1052*4882a593Smuzhiyun exact period/buffer sizes. (default = on) 1053*4882a593Smuzhiyunsnoop 1054*4882a593Smuzhiyun Enable/disable snooping (default = on) 1055*4882a593Smuzhiyun 1056*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 1057*4882a593Smuzhiyun 1058*4882a593SmuzhiyunSee hd-audio/notes.rst for more details about HD-audio driver. 1059*4882a593Smuzhiyun 1060*4882a593SmuzhiyunEach codec may have a model table for different configurations. 1061*4882a593SmuzhiyunIf your machine isn't listed there, the default (usually minimal) 1062*4882a593Smuzhiyunconfiguration is set up. You can pass ``model=<name>`` option to 1063*4882a593Smuzhiyunspecify a certain model in such a case. There are different 1064*4882a593Smuzhiyunmodels depending on the codec chip. The list of available models 1065*4882a593Smuzhiyunis found in hd-audio/models.rst. 1066*4882a593Smuzhiyun 1067*4882a593SmuzhiyunThe model name ``generic`` is treated as a special case. When this 1068*4882a593Smuzhiyunmodel is given, the driver uses the generic codec parser without 1069*4882a593Smuzhiyun"codec-patch". It's sometimes good for testing and debugging. 1070*4882a593Smuzhiyun 1071*4882a593SmuzhiyunIf the default configuration doesn't work and one of the above 1072*4882a593Smuzhiyunmatches with your device, report it together with alsa-info.sh 1073*4882a593Smuzhiyunoutput (with ``--no-upload`` option) to kernel bugzilla or alsa-devel 1074*4882a593SmuzhiyunML (see the section `Links and Addresses`_). 1075*4882a593Smuzhiyun 1076*4882a593Smuzhiyun``power_save`` and ``power_save_controller`` options are for power-saving 1077*4882a593Smuzhiyunmode. See powersave.rst for details. 1078*4882a593Smuzhiyun 1079*4882a593SmuzhiyunNote 2: If you get click noises on output, try the module option 1080*4882a593Smuzhiyun``position_fix=1`` or ``2``. ``position_fix=1`` will use the SD_LPIB 1081*4882a593Smuzhiyunregister value without FIFO size correction as the current 1082*4882a593SmuzhiyunDMA pointer. ``position_fix=2`` will make the driver to use 1083*4882a593Smuzhiyunthe position buffer instead of reading SD_LPIB register. 1084*4882a593Smuzhiyun(Usually SD_LPIB register is more accurate than the 1085*4882a593Smuzhiyunposition buffer.) 1086*4882a593Smuzhiyun 1087*4882a593Smuzhiyun``position_fix=3`` is specific to VIA devices. The position 1088*4882a593Smuzhiyunof the capture stream is checked from both LPIB and POSBUF 1089*4882a593Smuzhiyunvalues. ``position_fix=4`` is a combination mode, using LPIB 1090*4882a593Smuzhiyunfor playback and POSBUF for capture. 1091*4882a593Smuzhiyun 1092*4882a593SmuzhiyunNB: If you get many ``azx_get_response timeout`` messages at 1093*4882a593Smuzhiyunloading, it's likely a problem of interrupts (e.g. ACPI irq 1094*4882a593Smuzhiyunrouting). Try to boot with options like ``pci=noacpi``. Also, you 1095*4882a593Smuzhiyuncan try ``single_cmd=1`` module option. This will switch the 1096*4882a593Smuzhiyuncommunication method between HDA controller and codecs to the 1097*4882a593Smuzhiyunsingle immediate commands instead of CORB/RIRB. Basically, the 1098*4882a593Smuzhiyunsingle command mode is provided only for BIOS, and you won't get 1099*4882a593Smuzhiyununsolicited events, too. But, at least, this works independently 1100*4882a593Smuzhiyunfrom the irq. Remember this is a last resort, and should be 1101*4882a593Smuzhiyunavoided as much as possible... 1102*4882a593Smuzhiyun 1103*4882a593SmuzhiyunMORE NOTES ON ``azx_get_response timeout`` PROBLEMS: 1104*4882a593SmuzhiyunOn some hardware, you may need to add a proper probe_mask option 1105*4882a593Smuzhiyunto avoid the ``azx_get_response timeout`` problem above, instead. 1106*4882a593SmuzhiyunThis occurs when the access to non-existing or non-working codec slot 1107*4882a593Smuzhiyun(likely a modem one) causes a stall of the communication via HD-audio 1108*4882a593Smuzhiyunbus. You can see which codec slots are probed by enabling 1109*4882a593Smuzhiyun``CONFIG_SND_DEBUG_VERBOSE``, or simply from the file name of the codec 1110*4882a593Smuzhiyunproc files. Then limit the slots to probe by probe_mask option. 1111*4882a593SmuzhiyunFor example, ``probe_mask=1`` means to probe only the first slot, and 1112*4882a593Smuzhiyun``probe_mask=4`` means only the third slot. 1113*4882a593Smuzhiyun 1114*4882a593SmuzhiyunThe power-management is supported. 1115*4882a593Smuzhiyun 1116*4882a593SmuzhiyunModule snd-hdsp 1117*4882a593Smuzhiyun--------------- 1118*4882a593Smuzhiyun 1119*4882a593SmuzhiyunModule for RME Hammerfall DSP audio interface(s) 1120*4882a593Smuzhiyun 1121*4882a593SmuzhiyunThis module supports multiple cards. 1122*4882a593Smuzhiyun 1123*4882a593SmuzhiyunNote: The firmware data can be automatically loaded via hotplug 1124*4882a593Smuzhiyunwhen ``CONFIG_FW_LOADER`` is set. Otherwise, you need to load 1125*4882a593Smuzhiyunthe firmware via hdsploader utility included in alsa-tools 1126*4882a593Smuzhiyunpackage. 1127*4882a593SmuzhiyunThe firmware data is found in alsa-firmware package. 1128*4882a593Smuzhiyun 1129*4882a593SmuzhiyunNote: snd-page-alloc module does the job which snd-hammerfall-mem 1130*4882a593Smuzhiyunmodule did formerly. It will allocate the buffers in advance 1131*4882a593Smuzhiyunwhen any HDSP cards are found. To make the buffer 1132*4882a593Smuzhiyunallocation sure, load snd-page-alloc module in the early 1133*4882a593Smuzhiyunstage of boot sequence. See `Early Buffer Allocation`_ 1134*4882a593Smuzhiyunsection. 1135*4882a593Smuzhiyun 1136*4882a593SmuzhiyunModule snd-hdspm 1137*4882a593Smuzhiyun---------------- 1138*4882a593Smuzhiyun 1139*4882a593SmuzhiyunModule for RME HDSP MADI board. 1140*4882a593Smuzhiyun 1141*4882a593Smuzhiyunprecise_ptr 1142*4882a593Smuzhiyun Enable precise pointer, or disable. 1143*4882a593Smuzhiyunline_outs_monitor 1144*4882a593Smuzhiyun Send playback streams to analog outs by default. 1145*4882a593Smuzhiyunenable_monitor 1146*4882a593Smuzhiyun Enable Analog Out on Channel 63/64 by default. 1147*4882a593Smuzhiyun 1148*4882a593SmuzhiyunSee hdspm.rst for details. 1149*4882a593Smuzhiyun 1150*4882a593SmuzhiyunModule snd-ice1712 1151*4882a593Smuzhiyun------------------ 1152*4882a593Smuzhiyun 1153*4882a593SmuzhiyunModule for Envy24 (ICE1712) based PCI sound cards. 1154*4882a593Smuzhiyun 1155*4882a593Smuzhiyun* MidiMan M Audio Delta 1010 1156*4882a593Smuzhiyun* MidiMan M Audio Delta 1010LT 1157*4882a593Smuzhiyun* MidiMan M Audio Delta DiO 2496 1158*4882a593Smuzhiyun* MidiMan M Audio Delta 66 1159*4882a593Smuzhiyun* MidiMan M Audio Delta 44 1160*4882a593Smuzhiyun* MidiMan M Audio Delta 410 1161*4882a593Smuzhiyun* MidiMan M Audio Audiophile 2496 1162*4882a593Smuzhiyun* TerraTec EWS 88MT 1163*4882a593Smuzhiyun* TerraTec EWS 88D 1164*4882a593Smuzhiyun* TerraTec EWX 24/96 1165*4882a593Smuzhiyun* TerraTec DMX 6Fire 1166*4882a593Smuzhiyun* TerraTec Phase 88 1167*4882a593Smuzhiyun* Hoontech SoundTrack DSP 24 1168*4882a593Smuzhiyun* Hoontech SoundTrack DSP 24 Value 1169*4882a593Smuzhiyun* Hoontech SoundTrack DSP 24 Media 7.1 1170*4882a593Smuzhiyun* Event Electronics, EZ8 1171*4882a593Smuzhiyun* Digigram VX442 1172*4882a593Smuzhiyun* Lionstracs, Mediastaton 1173*4882a593Smuzhiyun* Terrasoniq TS 88 1174*4882a593Smuzhiyun 1175*4882a593Smuzhiyunmodel 1176*4882a593Smuzhiyun Use the given board model, one of the following: 1177*4882a593Smuzhiyun delta1010, dio2496, delta66, delta44, audiophile, delta410, 1178*4882a593Smuzhiyun delta1010lt, vx442, ewx2496, ews88mt, ews88mt_new, ews88d, 1179*4882a593Smuzhiyun dmx6fire, dsp24, dsp24_value, dsp24_71, ez8, 1180*4882a593Smuzhiyun phase88, mediastation 1181*4882a593Smuzhiyunomni 1182*4882a593Smuzhiyun Omni I/O support for MidiMan M-Audio Delta44/66 1183*4882a593Smuzhiyuncs8427_timeout 1184*4882a593Smuzhiyun reset timeout for the CS8427 chip (S/PDIF transceiver) in msec 1185*4882a593Smuzhiyun resolution, default value is 500 (0.5 sec) 1186*4882a593Smuzhiyun 1187*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 1188*4882a593SmuzhiyunNote: The consumer part is not used with all Envy24 based cards (for 1189*4882a593Smuzhiyunexample in the MidiMan Delta siree). 1190*4882a593Smuzhiyun 1191*4882a593SmuzhiyunNote: The supported board is detected by reading EEPROM or PCI 1192*4882a593SmuzhiyunSSID (if EEPROM isn't available). You can override the 1193*4882a593Smuzhiyunmodel by passing ``model`` module option in case that the 1194*4882a593Smuzhiyundriver isn't configured properly or you want to try another 1195*4882a593Smuzhiyuntype for testing. 1196*4882a593Smuzhiyun 1197*4882a593SmuzhiyunModule snd-ice1724 1198*4882a593Smuzhiyun------------------ 1199*4882a593Smuzhiyun 1200*4882a593SmuzhiyunModule for Envy24HT (VT/ICE1724), Envy24PT (VT1720) based PCI sound cards. 1201*4882a593Smuzhiyun 1202*4882a593Smuzhiyun* MidiMan M Audio Revolution 5.1 1203*4882a593Smuzhiyun* MidiMan M Audio Revolution 7.1 1204*4882a593Smuzhiyun* MidiMan M Audio Audiophile 192 1205*4882a593Smuzhiyun* AMP Ltd AUDIO2000 1206*4882a593Smuzhiyun* TerraTec Aureon 5.1 Sky 1207*4882a593Smuzhiyun* TerraTec Aureon 7.1 Space 1208*4882a593Smuzhiyun* TerraTec Aureon 7.1 Universe 1209*4882a593Smuzhiyun* TerraTec Phase 22 1210*4882a593Smuzhiyun* TerraTec Phase 28 1211*4882a593Smuzhiyun* AudioTrak Prodigy 7.1 1212*4882a593Smuzhiyun* AudioTrak Prodigy 7.1 LT 1213*4882a593Smuzhiyun* AudioTrak Prodigy 7.1 XT 1214*4882a593Smuzhiyun* AudioTrak Prodigy 7.1 HIFI 1215*4882a593Smuzhiyun* AudioTrak Prodigy 7.1 HD2 1216*4882a593Smuzhiyun* AudioTrak Prodigy 192 1217*4882a593Smuzhiyun* Pontis MS300 1218*4882a593Smuzhiyun* Albatron K8X800 Pro II 1219*4882a593Smuzhiyun* Chaintech ZNF3-150 1220*4882a593Smuzhiyun* Chaintech ZNF3-250 1221*4882a593Smuzhiyun* Chaintech 9CJS 1222*4882a593Smuzhiyun* Chaintech AV-710 1223*4882a593Smuzhiyun* Shuttle SN25P 1224*4882a593Smuzhiyun* Onkyo SE-90PCI 1225*4882a593Smuzhiyun* Onkyo SE-200PCI 1226*4882a593Smuzhiyun* ESI Juli@ 1227*4882a593Smuzhiyun* ESI Maya44 1228*4882a593Smuzhiyun* Hercules Fortissimo IV 1229*4882a593Smuzhiyun* EGO-SYS WaveTerminal 192M 1230*4882a593Smuzhiyun 1231*4882a593Smuzhiyunmodel 1232*4882a593Smuzhiyun Use the given board model, one of the following: 1233*4882a593Smuzhiyun revo51, revo71, amp2000, prodigy71, prodigy71lt, 1234*4882a593Smuzhiyun prodigy71xt, prodigy71hifi, prodigyhd2, prodigy192, 1235*4882a593Smuzhiyun juli, aureon51, aureon71, universe, ap192, k8x800, 1236*4882a593Smuzhiyun phase22, phase28, ms300, av710, se200pci, se90pci, 1237*4882a593Smuzhiyun fortissimo4, sn25p, WT192M, maya44 1238*4882a593Smuzhiyun 1239*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 1240*4882a593Smuzhiyun 1241*4882a593SmuzhiyunNote: The supported board is detected by reading EEPROM or PCI 1242*4882a593SmuzhiyunSSID (if EEPROM isn't available). You can override the 1243*4882a593Smuzhiyunmodel by passing ``model`` module option in case that the 1244*4882a593Smuzhiyundriver isn't configured properly or you want to try another 1245*4882a593Smuzhiyuntype for testing. 1246*4882a593Smuzhiyun 1247*4882a593SmuzhiyunModule snd-indigo 1248*4882a593Smuzhiyun----------------- 1249*4882a593Smuzhiyun 1250*4882a593SmuzhiyunModule for Echoaudio Indigo 1251*4882a593Smuzhiyun 1252*4882a593SmuzhiyunThis module supports multiple cards. 1253*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1254*4882a593Smuzhiyun 1255*4882a593SmuzhiyunModule snd-indigodj 1256*4882a593Smuzhiyun------------------- 1257*4882a593Smuzhiyun 1258*4882a593SmuzhiyunModule for Echoaudio Indigo DJ 1259*4882a593Smuzhiyun 1260*4882a593SmuzhiyunThis module supports multiple cards. 1261*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1262*4882a593Smuzhiyun 1263*4882a593SmuzhiyunModule snd-indigoio 1264*4882a593Smuzhiyun------------------- 1265*4882a593Smuzhiyun 1266*4882a593SmuzhiyunModule for Echoaudio Indigo IO 1267*4882a593Smuzhiyun 1268*4882a593SmuzhiyunThis module supports multiple cards. 1269*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1270*4882a593Smuzhiyun 1271*4882a593SmuzhiyunModule snd-intel8x0 1272*4882a593Smuzhiyun------------------- 1273*4882a593Smuzhiyun 1274*4882a593SmuzhiyunModule for AC'97 motherboards from Intel and compatibles. 1275*4882a593Smuzhiyun 1276*4882a593Smuzhiyun* Intel i810/810E, i815, i820, i830, i84x, MX440 ICH5, ICH6, ICH7, 1277*4882a593Smuzhiyun 6300ESB, ESB2 1278*4882a593Smuzhiyun* SiS 7012 (SiS 735) 1279*4882a593Smuzhiyun* NVidia NForce, NForce2, NForce3, MCP04, CK804 CK8, CK8S, MCP501 1280*4882a593Smuzhiyun* AMD AMD768, AMD8111 1281*4882a593Smuzhiyun* ALi m5455 1282*4882a593Smuzhiyun 1283*4882a593Smuzhiyunac97_clock 1284*4882a593Smuzhiyun AC'97 codec clock base (0 = auto-detect) 1285*4882a593Smuzhiyunac97_quirk 1286*4882a593Smuzhiyun AC'97 workaround for strange hardware; 1287*4882a593Smuzhiyun See `AC97 Quirk Option`_ section below. 1288*4882a593Smuzhiyunbuggy_irq 1289*4882a593Smuzhiyun Enable workaround for buggy interrupts on some motherboards 1290*4882a593Smuzhiyun (default yes on nForce chips, otherwise off) 1291*4882a593Smuzhiyunbuggy_semaphore 1292*4882a593Smuzhiyun Enable workaround for hardware with buggy semaphores (e.g. on some 1293*4882a593Smuzhiyun ASUS laptops) (default off) 1294*4882a593Smuzhiyunspdif_aclink 1295*4882a593Smuzhiyun Use S/PDIF over AC-link instead of direct connection from the 1296*4882a593Smuzhiyun controller chip (0 = off, 1 = on, -1 = default) 1297*4882a593Smuzhiyun 1298*4882a593SmuzhiyunThis module supports one chip and autoprobe. 1299*4882a593Smuzhiyun 1300*4882a593SmuzhiyunNote: the latest driver supports auto-detection of chip clock. 1301*4882a593Smuzhiyunif you still encounter too fast playback, specify the clock 1302*4882a593Smuzhiyunexplicitly via the module option ``ac97_clock=41194``. 1303*4882a593Smuzhiyun 1304*4882a593SmuzhiyunJoystick/MIDI ports are not supported by this driver. If your 1305*4882a593Smuzhiyunmotherboard has these devices, use the ns558 or snd-mpu401 1306*4882a593Smuzhiyunmodules, respectively. 1307*4882a593Smuzhiyun 1308*4882a593SmuzhiyunThe power-management is supported. 1309*4882a593Smuzhiyun 1310*4882a593SmuzhiyunModule snd-intel8x0m 1311*4882a593Smuzhiyun-------------------- 1312*4882a593Smuzhiyun 1313*4882a593SmuzhiyunModule for Intel ICH (i8x0) chipset MC97 modems. 1314*4882a593Smuzhiyun 1315*4882a593Smuzhiyun* Intel i810/810E, i815, i820, i830, i84x, MX440 ICH5, ICH6, ICH7 1316*4882a593Smuzhiyun* SiS 7013 (SiS 735) 1317*4882a593Smuzhiyun* NVidia NForce, NForce2, NForce2s, NForce3 1318*4882a593Smuzhiyun* AMD AMD8111 1319*4882a593Smuzhiyun* ALi m5455 1320*4882a593Smuzhiyun 1321*4882a593Smuzhiyunac97_clock 1322*4882a593Smuzhiyun AC'97 codec clock base (0 = auto-detect) 1323*4882a593Smuzhiyun 1324*4882a593SmuzhiyunThis module supports one card and autoprobe. 1325*4882a593Smuzhiyun 1326*4882a593SmuzhiyunNote: The default index value of this module is -2, i.e. the first 1327*4882a593Smuzhiyunslot is excluded. 1328*4882a593Smuzhiyun 1329*4882a593SmuzhiyunThe power-management is supported. 1330*4882a593Smuzhiyun 1331*4882a593SmuzhiyunModule snd-interwave 1332*4882a593Smuzhiyun-------------------- 1333*4882a593Smuzhiyun 1334*4882a593SmuzhiyunModule for Gravis UltraSound PnP, Dynasonic 3-D/Pro, STB Sound Rage 32 1335*4882a593Smuzhiyunand other sound cards based on AMD InterWave (tm) chip. 1336*4882a593Smuzhiyun 1337*4882a593Smuzhiyunjoystick_dac 1338*4882a593Smuzhiyun 0 to 31, (0.59V-4.52V or 0.389V-2.98V) 1339*4882a593Smuzhiyunmidi 1340*4882a593Smuzhiyun 1 = MIDI UART enable, 0 = MIDI UART disable (default) 1341*4882a593Smuzhiyunpcm_voices 1342*4882a593Smuzhiyun reserved PCM voices for the synthesizer (default 2) 1343*4882a593Smuzhiyuneffect 1344*4882a593Smuzhiyun 1 = InterWave effects enable (default 0); requires 8 voices 1345*4882a593Smuzhiyunisapnp 1346*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1347*4882a593Smuzhiyun 1348*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1349*4882a593Smuzhiyun 1350*4882a593Smuzhiyunport 1351*4882a593Smuzhiyun port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260) 1352*4882a593Smuzhiyunirq 1353*4882a593Smuzhiyun IRQ # for InterWave chip (3,5,9,11,12,15) 1354*4882a593Smuzhiyundma1 1355*4882a593Smuzhiyun DMA # for InterWave chip (0,1,3,5,6,7) 1356*4882a593Smuzhiyundma2 1357*4882a593Smuzhiyun DMA # for InterWave chip (0,1,3,5,6,7,-1=disable) 1358*4882a593Smuzhiyun 1359*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and ISA PnP. 1360*4882a593Smuzhiyun 1361*4882a593SmuzhiyunModule snd-interwave-stb 1362*4882a593Smuzhiyun------------------------ 1363*4882a593Smuzhiyun 1364*4882a593SmuzhiyunModule for UltraSound 32-Pro (sound card from STB used by Compaq) 1365*4882a593Smuzhiyunand other sound cards based on AMD InterWave (tm) chip with TEA6330T 1366*4882a593Smuzhiyuncircuit for extended control of bass, treble and master volume. 1367*4882a593Smuzhiyun 1368*4882a593Smuzhiyunjoystick_dac 1369*4882a593Smuzhiyun 0 to 31, (0.59V-4.52V or 0.389V-2.98V) 1370*4882a593Smuzhiyunmidi 1371*4882a593Smuzhiyun 1 = MIDI UART enable, 0 = MIDI UART disable (default) 1372*4882a593Smuzhiyunpcm_voices 1373*4882a593Smuzhiyun reserved PCM voices for the synthesizer (default 2) 1374*4882a593Smuzhiyuneffect 1375*4882a593Smuzhiyun 1 = InterWave effects enable (default 0); requires 8 voices 1376*4882a593Smuzhiyunisapnp 1377*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1378*4882a593Smuzhiyun 1379*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1380*4882a593Smuzhiyun 1381*4882a593Smuzhiyunport 1382*4882a593Smuzhiyun port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260) 1383*4882a593Smuzhiyunport_tc 1384*4882a593Smuzhiyun tone control (i2c bus) port # for TEA6330T chip (0x350,0x360,0x370,0x380) 1385*4882a593Smuzhiyunirq 1386*4882a593Smuzhiyun IRQ # for InterWave chip (3,5,9,11,12,15) 1387*4882a593Smuzhiyundma1 1388*4882a593Smuzhiyun DMA # for InterWave chip (0,1,3,5,6,7) 1389*4882a593Smuzhiyundma2 1390*4882a593Smuzhiyun DMA # for InterWave chip (0,1,3,5,6,7,-1=disable) 1391*4882a593Smuzhiyun 1392*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and ISA PnP. 1393*4882a593Smuzhiyun 1394*4882a593SmuzhiyunModule snd-jazz16 1395*4882a593Smuzhiyun------------------- 1396*4882a593Smuzhiyun 1397*4882a593SmuzhiyunModule for Media Vision Jazz16 chipset. The chipset consists of 3 chips: 1398*4882a593SmuzhiyunMVD1216 + MVA416 + MVA514. 1399*4882a593Smuzhiyun 1400*4882a593Smuzhiyunport 1401*4882a593Smuzhiyun port # for SB DSP chip (0x210,0x220,0x230,0x240,0x250,0x260) 1402*4882a593Smuzhiyunirq 1403*4882a593Smuzhiyun IRQ # for SB DSP chip (3,5,7,9,10,15) 1404*4882a593Smuzhiyundma8 1405*4882a593Smuzhiyun DMA # for SB DSP chip (1,3) 1406*4882a593Smuzhiyundma16 1407*4882a593Smuzhiyun DMA # for SB DSP chip (5,7) 1408*4882a593Smuzhiyunmpu_port 1409*4882a593Smuzhiyun MPU-401 port # (0x300,0x310,0x320,0x330) 1410*4882a593Smuzhiyunmpu_irq 1411*4882a593Smuzhiyun MPU-401 irq # (2,3,5,7) 1412*4882a593Smuzhiyun 1413*4882a593SmuzhiyunThis module supports multiple cards. 1414*4882a593Smuzhiyun 1415*4882a593SmuzhiyunModule snd-korg1212 1416*4882a593Smuzhiyun------------------- 1417*4882a593Smuzhiyun 1418*4882a593SmuzhiyunModule for Korg 1212 IO PCI card 1419*4882a593Smuzhiyun 1420*4882a593SmuzhiyunThis module supports multiple cards. 1421*4882a593Smuzhiyun 1422*4882a593SmuzhiyunModule snd-layla20 1423*4882a593Smuzhiyun------------------ 1424*4882a593Smuzhiyun 1425*4882a593SmuzhiyunModule for Echoaudio Layla20 1426*4882a593Smuzhiyun 1427*4882a593SmuzhiyunThis module supports multiple cards. 1428*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1429*4882a593Smuzhiyun 1430*4882a593SmuzhiyunModule snd-layla24 1431*4882a593Smuzhiyun------------------ 1432*4882a593Smuzhiyun 1433*4882a593SmuzhiyunModule for Echoaudio Layla24 1434*4882a593Smuzhiyun 1435*4882a593SmuzhiyunThis module supports multiple cards. 1436*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1437*4882a593Smuzhiyun 1438*4882a593SmuzhiyunModule snd-lola 1439*4882a593Smuzhiyun--------------- 1440*4882a593Smuzhiyun 1441*4882a593SmuzhiyunModule for Digigram Lola PCI-e boards 1442*4882a593Smuzhiyun 1443*4882a593SmuzhiyunThis module supports multiple cards. 1444*4882a593Smuzhiyun 1445*4882a593SmuzhiyunModule snd-lx6464es 1446*4882a593Smuzhiyun------------------- 1447*4882a593Smuzhiyun 1448*4882a593SmuzhiyunModule for Digigram LX6464ES boards 1449*4882a593Smuzhiyun 1450*4882a593SmuzhiyunThis module supports multiple cards. 1451*4882a593Smuzhiyun 1452*4882a593SmuzhiyunModule snd-maestro3 1453*4882a593Smuzhiyun------------------- 1454*4882a593Smuzhiyun 1455*4882a593SmuzhiyunModule for Allegro/Maestro3 chips 1456*4882a593Smuzhiyun 1457*4882a593Smuzhiyunexternal_amp 1458*4882a593Smuzhiyun enable external amp (enabled by default) 1459*4882a593Smuzhiyunamp_gpio 1460*4882a593Smuzhiyun GPIO pin number for external amp (0-15) or -1 for default pin (8 1461*4882a593Smuzhiyun for allegro, 1 for others) 1462*4882a593Smuzhiyun 1463*4882a593SmuzhiyunThis module supports autoprobe and multiple chips. 1464*4882a593Smuzhiyun 1465*4882a593SmuzhiyunNote: the binding of amplifier is dependent on hardware. 1466*4882a593SmuzhiyunIf there is no sound even though all channels are unmuted, try to 1467*4882a593Smuzhiyunspecify other gpio connection via amp_gpio option. 1468*4882a593SmuzhiyunFor example, a Panasonic notebook might need ``amp_gpio=0x0d`` 1469*4882a593Smuzhiyunoption. 1470*4882a593Smuzhiyun 1471*4882a593SmuzhiyunThe power-management is supported. 1472*4882a593Smuzhiyun 1473*4882a593SmuzhiyunModule snd-mia 1474*4882a593Smuzhiyun--------------- 1475*4882a593Smuzhiyun 1476*4882a593SmuzhiyunModule for Echoaudio Mia 1477*4882a593Smuzhiyun 1478*4882a593SmuzhiyunThis module supports multiple cards. 1479*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1480*4882a593Smuzhiyun 1481*4882a593SmuzhiyunModule snd-miro 1482*4882a593Smuzhiyun--------------- 1483*4882a593Smuzhiyun 1484*4882a593SmuzhiyunModule for Miro soundcards: miroSOUND PCM 1 pro, miroSOUND PCM 12, 1485*4882a593SmuzhiyunmiroSOUND PCM 20 Radio. 1486*4882a593Smuzhiyun 1487*4882a593Smuzhiyunport 1488*4882a593Smuzhiyun Port # (0x530,0x604,0xe80,0xf40) 1489*4882a593Smuzhiyunirq 1490*4882a593Smuzhiyun IRQ # (5,7,9,10,11) 1491*4882a593Smuzhiyundma1 1492*4882a593Smuzhiyun 1st dma # (0,1,3) 1493*4882a593Smuzhiyundma2 1494*4882a593Smuzhiyun 2nd dma # (0,1) 1495*4882a593Smuzhiyunmpu_port 1496*4882a593Smuzhiyun MPU-401 port # (0x300,0x310,0x320,0x330) 1497*4882a593Smuzhiyunmpu_irq 1498*4882a593Smuzhiyun MPU-401 irq # (5,7,9,10) 1499*4882a593Smuzhiyunfm_port 1500*4882a593Smuzhiyun FM Port # (0x388) 1501*4882a593Smuzhiyunwss 1502*4882a593Smuzhiyun enable WSS mode 1503*4882a593Smuzhiyunide 1504*4882a593Smuzhiyun enable onboard ide support 1505*4882a593Smuzhiyun 1506*4882a593SmuzhiyunModule snd-mixart 1507*4882a593Smuzhiyun----------------- 1508*4882a593Smuzhiyun 1509*4882a593SmuzhiyunModule for Digigram miXart8 sound cards. 1510*4882a593Smuzhiyun 1511*4882a593SmuzhiyunThis module supports multiple cards. 1512*4882a593SmuzhiyunNote: One miXart8 board will be represented as 4 alsa cards. 1513*4882a593SmuzhiyunSee Documentation/sound/cards/mixart.rst for details. 1514*4882a593Smuzhiyun 1515*4882a593SmuzhiyunWhen the driver is compiled as a module and the hotplug firmware 1516*4882a593Smuzhiyunis supported, the firmware data is loaded via hotplug automatically. 1517*4882a593SmuzhiyunInstall the necessary firmware files in alsa-firmware package. 1518*4882a593SmuzhiyunWhen no hotplug fw loader is available, you need to load the 1519*4882a593Smuzhiyunfirmware via mixartloader utility in alsa-tools package. 1520*4882a593Smuzhiyun 1521*4882a593SmuzhiyunModule snd-mona 1522*4882a593Smuzhiyun--------------- 1523*4882a593Smuzhiyun 1524*4882a593SmuzhiyunModule for Echoaudio Mona 1525*4882a593Smuzhiyun 1526*4882a593SmuzhiyunThis module supports multiple cards. 1527*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1528*4882a593Smuzhiyun 1529*4882a593SmuzhiyunModule snd-mpu401 1530*4882a593Smuzhiyun----------------- 1531*4882a593Smuzhiyun 1532*4882a593SmuzhiyunModule for MPU-401 UART devices. 1533*4882a593Smuzhiyun 1534*4882a593Smuzhiyunport 1535*4882a593Smuzhiyun port number or -1 (disable) 1536*4882a593Smuzhiyunirq 1537*4882a593Smuzhiyun IRQ number or -1 (disable) 1538*4882a593Smuzhiyunpnp 1539*4882a593Smuzhiyun PnP detection - 0 = disable, 1 = enable (default) 1540*4882a593Smuzhiyun 1541*4882a593SmuzhiyunThis module supports multiple devices and PnP. 1542*4882a593Smuzhiyun 1543*4882a593SmuzhiyunModule snd-msnd-classic 1544*4882a593Smuzhiyun----------------------- 1545*4882a593Smuzhiyun 1546*4882a593SmuzhiyunModule for Turtle Beach MultiSound Classic, Tahiti or Monterey 1547*4882a593Smuzhiyunsoundcards. 1548*4882a593Smuzhiyun 1549*4882a593Smuzhiyunio 1550*4882a593Smuzhiyun Port # for msnd-classic card 1551*4882a593Smuzhiyunirq 1552*4882a593Smuzhiyun IRQ # for msnd-classic card 1553*4882a593Smuzhiyunmem 1554*4882a593Smuzhiyun Memory address (0xb0000, 0xc8000, 0xd0000, 0xd8000, 0xe0000 or 0xe8000) 1555*4882a593Smuzhiyunwrite_ndelay 1556*4882a593Smuzhiyun enable write ndelay (default = 1) 1557*4882a593Smuzhiyuncalibrate_signal 1558*4882a593Smuzhiyun calibrate signal (default = 0) 1559*4882a593Smuzhiyunisapnp 1560*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1561*4882a593Smuzhiyundigital 1562*4882a593Smuzhiyun Digital daughterboard present (default = 0) 1563*4882a593Smuzhiyuncfg 1564*4882a593Smuzhiyun Config port (0x250, 0x260 or 0x270) default = PnP 1565*4882a593Smuzhiyunreset 1566*4882a593Smuzhiyun Reset all devices 1567*4882a593Smuzhiyunmpu_io 1568*4882a593Smuzhiyun MPU401 I/O port 1569*4882a593Smuzhiyunmpu_irq 1570*4882a593Smuzhiyun MPU401 irq# 1571*4882a593Smuzhiyunide_io0 1572*4882a593Smuzhiyun IDE port #0 1573*4882a593Smuzhiyunide_io1 1574*4882a593Smuzhiyun IDE port #1 1575*4882a593Smuzhiyunide_irq 1576*4882a593Smuzhiyun IDE irq# 1577*4882a593Smuzhiyunjoystick_io 1578*4882a593Smuzhiyun Joystick I/O port 1579*4882a593Smuzhiyun 1580*4882a593SmuzhiyunThe driver requires firmware files ``turtlebeach/msndinit.bin`` and 1581*4882a593Smuzhiyun``turtlebeach/msndperm.bin`` in the proper firmware directory. 1582*4882a593Smuzhiyun 1583*4882a593SmuzhiyunSee Documentation/sound/cards/multisound.sh for important information 1584*4882a593Smuzhiyunabout this driver. Note that it has been discontinued, but the 1585*4882a593SmuzhiyunVoyetra Turtle Beach knowledge base entry for it is still available 1586*4882a593Smuzhiyunat 1587*4882a593Smuzhiyunhttps://www.turtlebeach.com 1588*4882a593Smuzhiyun 1589*4882a593SmuzhiyunModule snd-msnd-pinnacle 1590*4882a593Smuzhiyun------------------------ 1591*4882a593Smuzhiyun 1592*4882a593SmuzhiyunModule for Turtle Beach MultiSound Pinnacle/Fiji soundcards. 1593*4882a593Smuzhiyun 1594*4882a593Smuzhiyunio 1595*4882a593Smuzhiyun Port # for pinnacle/fiji card 1596*4882a593Smuzhiyunirq 1597*4882a593Smuzhiyun IRQ # for pinnalce/fiji card 1598*4882a593Smuzhiyunmem 1599*4882a593Smuzhiyun Memory address (0xb0000, 0xc8000, 0xd0000, 0xd8000, 0xe0000 or 0xe8000) 1600*4882a593Smuzhiyunwrite_ndelay 1601*4882a593Smuzhiyun enable write ndelay (default = 1) 1602*4882a593Smuzhiyuncalibrate_signal 1603*4882a593Smuzhiyun calibrate signal (default = 0) 1604*4882a593Smuzhiyunisapnp 1605*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1606*4882a593Smuzhiyun 1607*4882a593SmuzhiyunThe driver requires firmware files ``turtlebeach/pndspini.bin`` and 1608*4882a593Smuzhiyun``turtlebeach/pndsperm.bin`` in the proper firmware directory. 1609*4882a593Smuzhiyun 1610*4882a593SmuzhiyunModule snd-mtpav 1611*4882a593Smuzhiyun---------------- 1612*4882a593Smuzhiyun 1613*4882a593SmuzhiyunModule for MOTU MidiTimePiece AV multiport MIDI (on the parallel 1614*4882a593Smuzhiyunport). 1615*4882a593Smuzhiyun 1616*4882a593Smuzhiyunport 1617*4882a593Smuzhiyun I/O port # for MTPAV (0x378,0x278, default=0x378) 1618*4882a593Smuzhiyunirq 1619*4882a593Smuzhiyun IRQ # for MTPAV (7,5, default=7) 1620*4882a593Smuzhiyunhwports 1621*4882a593Smuzhiyun number of supported hardware ports, default=8. 1622*4882a593Smuzhiyun 1623*4882a593SmuzhiyunModule supports only 1 card. This module has no enable option. 1624*4882a593Smuzhiyun 1625*4882a593SmuzhiyunModule snd-mts64 1626*4882a593Smuzhiyun---------------- 1627*4882a593Smuzhiyun 1628*4882a593SmuzhiyunModule for Ego Systems (ESI) Miditerminal 4140 1629*4882a593Smuzhiyun 1630*4882a593SmuzhiyunThis module supports multiple devices. 1631*4882a593SmuzhiyunRequires parport (``CONFIG_PARPORT``). 1632*4882a593Smuzhiyun 1633*4882a593SmuzhiyunModule snd-nm256 1634*4882a593Smuzhiyun---------------- 1635*4882a593Smuzhiyun 1636*4882a593SmuzhiyunModule for NeoMagic NM256AV/ZX chips 1637*4882a593Smuzhiyun 1638*4882a593Smuzhiyunplayback_bufsize 1639*4882a593Smuzhiyun max playback frame size in kB (4-128kB) 1640*4882a593Smuzhiyuncapture_bufsize 1641*4882a593Smuzhiyun max capture frame size in kB (4-128kB) 1642*4882a593Smuzhiyunforce_ac97 1643*4882a593Smuzhiyun 0 or 1 (disabled by default) 1644*4882a593Smuzhiyunbuffer_top 1645*4882a593Smuzhiyun specify buffer top address 1646*4882a593Smuzhiyunuse_cache 1647*4882a593Smuzhiyun 0 or 1 (disabled by default) 1648*4882a593Smuzhiyunvaio_hack 1649*4882a593Smuzhiyun alias buffer_top=0x25a800 1650*4882a593Smuzhiyunreset_workaround 1651*4882a593Smuzhiyun enable AC97 RESET workaround for some laptops 1652*4882a593Smuzhiyunreset_workaround2 1653*4882a593Smuzhiyun enable extended AC97 RESET workaround for some other laptops 1654*4882a593Smuzhiyun 1655*4882a593SmuzhiyunThis module supports one chip and autoprobe. 1656*4882a593Smuzhiyun 1657*4882a593SmuzhiyunThe power-management is supported. 1658*4882a593Smuzhiyun 1659*4882a593SmuzhiyunNote: on some notebooks the buffer address cannot be detected 1660*4882a593Smuzhiyunautomatically, or causes hang-up during initialization. 1661*4882a593SmuzhiyunIn such a case, specify the buffer top address explicitly via 1662*4882a593Smuzhiyunthe buffer_top option. 1663*4882a593SmuzhiyunFor example, 1664*4882a593SmuzhiyunSony F250: buffer_top=0x25a800 1665*4882a593SmuzhiyunSony F270: buffer_top=0x272800 1666*4882a593SmuzhiyunThe driver supports only ac97 codec. It's possible to force 1667*4882a593Smuzhiyunto initialize/use ac97 although it's not detected. In such a 1668*4882a593Smuzhiyuncase, use ``force_ac97=1`` option - but *NO* guarantee whether it 1669*4882a593Smuzhiyunworks! 1670*4882a593Smuzhiyun 1671*4882a593SmuzhiyunNote: The NM256 chip can be linked internally with non-AC97 1672*4882a593Smuzhiyuncodecs. This driver supports only the AC97 codec, and won't work 1673*4882a593Smuzhiyunwith machines with other (most likely CS423x or OPL3SAx) chips, 1674*4882a593Smuzhiyuneven though the device is detected in lspci. In such a case, try 1675*4882a593Smuzhiyunother drivers, e.g. snd-cs4232 or snd-opl3sa2. Some has ISA-PnP 1676*4882a593Smuzhiyunbut some doesn't have ISA PnP. You'll need to specify ``isapnp=0`` 1677*4882a593Smuzhiyunand proper hardware parameters in the case without ISA PnP. 1678*4882a593Smuzhiyun 1679*4882a593SmuzhiyunNote: some laptops need a workaround for AC97 RESET. For the 1680*4882a593Smuzhiyunknown hardware like Dell Latitude LS and Sony PCG-F305, this 1681*4882a593Smuzhiyunworkaround is enabled automatically. For other laptops with a 1682*4882a593Smuzhiyunhard freeze, you can try ``reset_workaround=1`` option. 1683*4882a593Smuzhiyun 1684*4882a593SmuzhiyunNote: Dell Latitude CSx laptops have another problem regarding 1685*4882a593SmuzhiyunAC97 RESET. On these laptops, reset_workaround2 option is 1686*4882a593Smuzhiyunturned on as default. This option is worth to try if the 1687*4882a593Smuzhiyunprevious reset_workaround option doesn't help. 1688*4882a593Smuzhiyun 1689*4882a593SmuzhiyunNote: This driver is really crappy. It's a porting from the 1690*4882a593SmuzhiyunOSS driver, which is a result of black-magic reverse engineering. 1691*4882a593SmuzhiyunThe detection of codec will fail if the driver is loaded *after* 1692*4882a593SmuzhiyunX-server as described above. You might be able to force to load 1693*4882a593Smuzhiyunthe module, but it may result in hang-up. Hence, make sure that 1694*4882a593Smuzhiyunyou load this module *before* X if you encounter this kind of 1695*4882a593Smuzhiyunproblem. 1696*4882a593Smuzhiyun 1697*4882a593SmuzhiyunModule snd-opl3sa2 1698*4882a593Smuzhiyun------------------ 1699*4882a593Smuzhiyun 1700*4882a593SmuzhiyunModule for Yamaha OPL3-SA2/SA3 sound cards. 1701*4882a593Smuzhiyun 1702*4882a593Smuzhiyunisapnp 1703*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1704*4882a593Smuzhiyun 1705*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1706*4882a593Smuzhiyun 1707*4882a593Smuzhiyunport 1708*4882a593Smuzhiyun control port # for OPL3-SA chip (0x370) 1709*4882a593Smuzhiyunsb_port 1710*4882a593Smuzhiyun SB port # for OPL3-SA chip (0x220,0x240) 1711*4882a593Smuzhiyunwss_port 1712*4882a593Smuzhiyun WSS port # for OPL3-SA chip (0x530,0xe80,0xf40,0x604) 1713*4882a593Smuzhiyunmidi_port 1714*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x330), -1 = disable 1715*4882a593Smuzhiyunfm_port 1716*4882a593Smuzhiyun FM port # for OPL3-SA chip (0x388), -1 = disable 1717*4882a593Smuzhiyunirq 1718*4882a593Smuzhiyun IRQ # for OPL3-SA chip (5,7,9,10) 1719*4882a593Smuzhiyundma1 1720*4882a593Smuzhiyun first DMA # for Yamaha OPL3-SA chip (0,1,3) 1721*4882a593Smuzhiyundma2 1722*4882a593Smuzhiyun second DMA # for Yamaha OPL3-SA chip (0,1,3), -1 = disable 1723*4882a593Smuzhiyun 1724*4882a593SmuzhiyunThis module supports multiple cards and ISA PnP. It does not support 1725*4882a593Smuzhiyunautoprobe (if ISA PnP is not used) thus all ports must be specified!!! 1726*4882a593Smuzhiyun 1727*4882a593SmuzhiyunThe power-management is supported. 1728*4882a593Smuzhiyun 1729*4882a593SmuzhiyunModule snd-opti92x-ad1848 1730*4882a593Smuzhiyun------------------------- 1731*4882a593Smuzhiyun 1732*4882a593SmuzhiyunModule for sound cards based on OPTi 82c92x and Analog Devices AD1848 chips. 1733*4882a593SmuzhiyunModule works with OAK Mozart cards as well. 1734*4882a593Smuzhiyun 1735*4882a593Smuzhiyunisapnp 1736*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1737*4882a593Smuzhiyun 1738*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1739*4882a593Smuzhiyun 1740*4882a593Smuzhiyunport 1741*4882a593Smuzhiyun port # for WSS chip (0x530,0xe80,0xf40,0x604) 1742*4882a593Smuzhiyunmpu_port 1743*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x310,0x320,0x330) 1744*4882a593Smuzhiyunfm_port 1745*4882a593Smuzhiyun port # for OPL3 device (0x388) 1746*4882a593Smuzhiyunirq 1747*4882a593Smuzhiyun IRQ # for WSS chip (5,7,9,10,11) 1748*4882a593Smuzhiyunmpu_irq 1749*4882a593Smuzhiyun IRQ # for MPU-401 UART (5,7,9,10) 1750*4882a593Smuzhiyundma1 1751*4882a593Smuzhiyun first DMA # for WSS chip (0,1,3) 1752*4882a593Smuzhiyun 1753*4882a593SmuzhiyunThis module supports only one card, autoprobe and PnP. 1754*4882a593Smuzhiyun 1755*4882a593SmuzhiyunModule snd-opti92x-cs4231 1756*4882a593Smuzhiyun------------------------- 1757*4882a593Smuzhiyun 1758*4882a593SmuzhiyunModule for sound cards based on OPTi 82c92x and Crystal CS4231 chips. 1759*4882a593Smuzhiyun 1760*4882a593Smuzhiyunisapnp 1761*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1762*4882a593Smuzhiyun 1763*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1764*4882a593Smuzhiyun 1765*4882a593Smuzhiyunport 1766*4882a593Smuzhiyun port # for WSS chip (0x530,0xe80,0xf40,0x604) 1767*4882a593Smuzhiyunmpu_port 1768*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x310,0x320,0x330) 1769*4882a593Smuzhiyunfm_port 1770*4882a593Smuzhiyun port # for OPL3 device (0x388) 1771*4882a593Smuzhiyunirq 1772*4882a593Smuzhiyun IRQ # for WSS chip (5,7,9,10,11) 1773*4882a593Smuzhiyunmpu_irq 1774*4882a593Smuzhiyun IRQ # for MPU-401 UART (5,7,9,10) 1775*4882a593Smuzhiyundma1 1776*4882a593Smuzhiyun first DMA # for WSS chip (0,1,3) 1777*4882a593Smuzhiyundma2 1778*4882a593Smuzhiyun second DMA # for WSS chip (0,1,3) 1779*4882a593Smuzhiyun 1780*4882a593SmuzhiyunThis module supports only one card, autoprobe and PnP. 1781*4882a593Smuzhiyun 1782*4882a593SmuzhiyunModule snd-opti93x 1783*4882a593Smuzhiyun------------------ 1784*4882a593Smuzhiyun 1785*4882a593SmuzhiyunModule for sound cards based on OPTi 82c93x chips. 1786*4882a593Smuzhiyun 1787*4882a593Smuzhiyunisapnp 1788*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1789*4882a593Smuzhiyun 1790*4882a593Smuzhiyunwith ``isapnp=0``, the following options are available: 1791*4882a593Smuzhiyun 1792*4882a593Smuzhiyunport 1793*4882a593Smuzhiyun port # for WSS chip (0x530,0xe80,0xf40,0x604) 1794*4882a593Smuzhiyunmpu_port 1795*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x310,0x320,0x330) 1796*4882a593Smuzhiyunfm_port 1797*4882a593Smuzhiyun port # for OPL3 device (0x388) 1798*4882a593Smuzhiyunirq 1799*4882a593Smuzhiyun IRQ # for WSS chip (5,7,9,10,11) 1800*4882a593Smuzhiyunmpu_irq 1801*4882a593Smuzhiyun IRQ # for MPU-401 UART (5,7,9,10) 1802*4882a593Smuzhiyundma1 1803*4882a593Smuzhiyun first DMA # for WSS chip (0,1,3) 1804*4882a593Smuzhiyundma2 1805*4882a593Smuzhiyun second DMA # for WSS chip (0,1,3) 1806*4882a593Smuzhiyun 1807*4882a593SmuzhiyunThis module supports only one card, autoprobe and PnP. 1808*4882a593Smuzhiyun 1809*4882a593SmuzhiyunModule snd-oxygen 1810*4882a593Smuzhiyun----------------- 1811*4882a593Smuzhiyun 1812*4882a593SmuzhiyunModule for sound cards based on the C-Media CMI8786/8787/8788 chip: 1813*4882a593Smuzhiyun 1814*4882a593Smuzhiyun* Asound A-8788 1815*4882a593Smuzhiyun* Asus Xonar DG/DGX 1816*4882a593Smuzhiyun* AuzenTech X-Meridian 1817*4882a593Smuzhiyun* AuzenTech X-Meridian 2G 1818*4882a593Smuzhiyun* Bgears b-Enspirer 1819*4882a593Smuzhiyun* Club3D Theatron DTS 1820*4882a593Smuzhiyun* HT-Omega Claro (plus) 1821*4882a593Smuzhiyun* HT-Omega Claro halo (XT) 1822*4882a593Smuzhiyun* Kuroutoshikou CMI8787-HG2PCI 1823*4882a593Smuzhiyun* Razer Barracuda AC-1 1824*4882a593Smuzhiyun* Sondigo Inferno 1825*4882a593Smuzhiyun* TempoTec HiFier Fantasia 1826*4882a593Smuzhiyun* TempoTec HiFier Serenade 1827*4882a593Smuzhiyun 1828*4882a593SmuzhiyunThis module supports autoprobe and multiple cards. 1829*4882a593Smuzhiyun 1830*4882a593SmuzhiyunModule snd-pcsp 1831*4882a593Smuzhiyun--------------- 1832*4882a593Smuzhiyun 1833*4882a593SmuzhiyunModule for internal PC-Speaker. 1834*4882a593Smuzhiyun 1835*4882a593Smuzhiyunnopcm 1836*4882a593Smuzhiyun Disable PC-Speaker PCM sound. Only beeps remain. 1837*4882a593Smuzhiyunnforce_wa 1838*4882a593Smuzhiyun enable NForce chipset workaround. Expect bad sound. 1839*4882a593Smuzhiyun 1840*4882a593SmuzhiyunThis module supports system beeps, some kind of PCM playback and 1841*4882a593Smuzhiyuneven a few mixer controls. 1842*4882a593Smuzhiyun 1843*4882a593SmuzhiyunModule snd-pcxhr 1844*4882a593Smuzhiyun---------------- 1845*4882a593Smuzhiyun 1846*4882a593SmuzhiyunModule for Digigram PCXHR boards 1847*4882a593Smuzhiyun 1848*4882a593SmuzhiyunThis module supports multiple cards. 1849*4882a593Smuzhiyun 1850*4882a593SmuzhiyunModule snd-portman2x4 1851*4882a593Smuzhiyun--------------------- 1852*4882a593Smuzhiyun 1853*4882a593SmuzhiyunModule for Midiman Portman 2x4 parallel port MIDI interface 1854*4882a593Smuzhiyun 1855*4882a593SmuzhiyunThis module supports multiple cards. 1856*4882a593Smuzhiyun 1857*4882a593SmuzhiyunModule snd-powermac (on ppc only) 1858*4882a593Smuzhiyun--------------------------------- 1859*4882a593Smuzhiyun 1860*4882a593SmuzhiyunModule for PowerMac, iMac and iBook on-board soundchips 1861*4882a593Smuzhiyun 1862*4882a593Smuzhiyunenable_beep 1863*4882a593Smuzhiyun enable beep using PCM (enabled as default) 1864*4882a593Smuzhiyun 1865*4882a593SmuzhiyunModule supports autoprobe a chip. 1866*4882a593Smuzhiyun 1867*4882a593SmuzhiyunNote: the driver may have problems regarding endianness. 1868*4882a593Smuzhiyun 1869*4882a593SmuzhiyunThe power-management is supported. 1870*4882a593Smuzhiyun 1871*4882a593SmuzhiyunModule snd-pxa2xx-ac97 (on arm only) 1872*4882a593Smuzhiyun------------------------------------ 1873*4882a593Smuzhiyun 1874*4882a593SmuzhiyunModule for AC97 driver for the Intel PXA2xx chip 1875*4882a593Smuzhiyun 1876*4882a593SmuzhiyunFor ARM architecture only. 1877*4882a593Smuzhiyun 1878*4882a593SmuzhiyunThe power-management is supported. 1879*4882a593Smuzhiyun 1880*4882a593SmuzhiyunModule snd-riptide 1881*4882a593Smuzhiyun------------------ 1882*4882a593Smuzhiyun 1883*4882a593SmuzhiyunModule for Conexant Riptide chip 1884*4882a593Smuzhiyun 1885*4882a593Smuzhiyunjoystick_port 1886*4882a593Smuzhiyun Joystick port # (default: 0x200) 1887*4882a593Smuzhiyunmpu_port 1888*4882a593Smuzhiyun MPU401 port # (default: 0x330) 1889*4882a593Smuzhiyunopl3_port 1890*4882a593Smuzhiyun OPL3 port # (default: 0x388) 1891*4882a593Smuzhiyun 1892*4882a593SmuzhiyunThis module supports multiple cards. 1893*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 1894*4882a593SmuzhiyunYou need to install the firmware file ``riptide.hex`` to the standard 1895*4882a593Smuzhiyunfirmware path (e.g. /lib/firmware). 1896*4882a593Smuzhiyun 1897*4882a593SmuzhiyunModule snd-rme32 1898*4882a593Smuzhiyun---------------- 1899*4882a593Smuzhiyun 1900*4882a593SmuzhiyunModule for RME Digi32, Digi32 Pro and Digi32/8 (Sek'd Prodif32, 1901*4882a593SmuzhiyunProdif96 and Prodif Gold) sound cards. 1902*4882a593Smuzhiyun 1903*4882a593SmuzhiyunThis module supports multiple cards. 1904*4882a593Smuzhiyun 1905*4882a593SmuzhiyunModule snd-rme96 1906*4882a593Smuzhiyun---------------- 1907*4882a593Smuzhiyun 1908*4882a593SmuzhiyunModule for RME Digi96, Digi96/8 and Digi96/8 PRO/PAD/PST sound cards. 1909*4882a593Smuzhiyun 1910*4882a593SmuzhiyunThis module supports multiple cards. 1911*4882a593Smuzhiyun 1912*4882a593SmuzhiyunModule snd-rme9652 1913*4882a593Smuzhiyun------------------ 1914*4882a593Smuzhiyun 1915*4882a593SmuzhiyunModule for RME Digi9652 (Hammerfall, Hammerfall-Light) sound cards. 1916*4882a593Smuzhiyun 1917*4882a593Smuzhiyunprecise_ptr 1918*4882a593Smuzhiyun Enable precise pointer (doesn't work reliably). (default = 0) 1919*4882a593Smuzhiyun 1920*4882a593SmuzhiyunThis module supports multiple cards. 1921*4882a593Smuzhiyun 1922*4882a593SmuzhiyunNote: snd-page-alloc module does the job which snd-hammerfall-mem 1923*4882a593Smuzhiyunmodule did formerly. It will allocate the buffers in advance 1924*4882a593Smuzhiyunwhen any RME9652 cards are found. To make the buffer 1925*4882a593Smuzhiyunallocation sure, load snd-page-alloc module in the early 1926*4882a593Smuzhiyunstage of boot sequence. See `Early Buffer Allocation`_ 1927*4882a593Smuzhiyunsection. 1928*4882a593Smuzhiyun 1929*4882a593SmuzhiyunModule snd-sa11xx-uda1341 (on arm only) 1930*4882a593Smuzhiyun--------------------------------------- 1931*4882a593Smuzhiyun 1932*4882a593SmuzhiyunModule for Philips UDA1341TS on Compaq iPAQ H3600 sound card. 1933*4882a593Smuzhiyun 1934*4882a593SmuzhiyunModule supports only one card. 1935*4882a593SmuzhiyunModule has no enable and index options. 1936*4882a593Smuzhiyun 1937*4882a593SmuzhiyunThe power-management is supported. 1938*4882a593Smuzhiyun 1939*4882a593SmuzhiyunModule snd-sb8 1940*4882a593Smuzhiyun-------------- 1941*4882a593Smuzhiyun 1942*4882a593SmuzhiyunModule for 8-bit SoundBlaster cards: SoundBlaster 1.0, SoundBlaster 2.0, 1943*4882a593SmuzhiyunSoundBlaster Pro 1944*4882a593Smuzhiyun 1945*4882a593Smuzhiyunport 1946*4882a593Smuzhiyun port # for SB DSP chip (0x220,0x240,0x260) 1947*4882a593Smuzhiyunirq 1948*4882a593Smuzhiyun IRQ # for SB DSP chip (5,7,9,10) 1949*4882a593Smuzhiyundma8 1950*4882a593Smuzhiyun DMA # for SB DSP chip (1,3) 1951*4882a593Smuzhiyun 1952*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 1953*4882a593Smuzhiyun 1954*4882a593SmuzhiyunThe power-management is supported. 1955*4882a593Smuzhiyun 1956*4882a593SmuzhiyunModule snd-sb16 and snd-sbawe 1957*4882a593Smuzhiyun----------------------------- 1958*4882a593Smuzhiyun 1959*4882a593SmuzhiyunModule for 16-bit SoundBlaster cards: SoundBlaster 16 (PnP), 1960*4882a593SmuzhiyunSoundBlaster AWE 32 (PnP), SoundBlaster AWE 64 PnP 1961*4882a593Smuzhiyun 1962*4882a593Smuzhiyunmic_agc 1963*4882a593Smuzhiyun Mic Auto-Gain-Control - 0 = disable, 1 = enable (default) 1964*4882a593Smuzhiyuncsp 1965*4882a593Smuzhiyun ASP/CSP chip support - 0 = disable (default), 1 = enable 1966*4882a593Smuzhiyunisapnp 1967*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 1968*4882a593Smuzhiyun 1969*4882a593Smuzhiyunwith isapnp=0, the following options are available: 1970*4882a593Smuzhiyun 1971*4882a593Smuzhiyunport 1972*4882a593Smuzhiyun port # for SB DSP 4.x chip (0x220,0x240,0x260) 1973*4882a593Smuzhiyunmpu_port 1974*4882a593Smuzhiyun port # for MPU-401 UART (0x300,0x330), -1 = disable 1975*4882a593Smuzhiyunawe_port 1976*4882a593Smuzhiyun base port # for EMU8000 synthesizer (0x620,0x640,0x660) (snd-sbawe 1977*4882a593Smuzhiyun module only) 1978*4882a593Smuzhiyunirq 1979*4882a593Smuzhiyun IRQ # for SB DSP 4.x chip (5,7,9,10) 1980*4882a593Smuzhiyundma8 1981*4882a593Smuzhiyun 8-bit DMA # for SB DSP 4.x chip (0,1,3) 1982*4882a593Smuzhiyundma16 1983*4882a593Smuzhiyun 16-bit DMA # for SB DSP 4.x chip (5,6,7) 1984*4882a593Smuzhiyun 1985*4882a593SmuzhiyunThis module supports multiple cards, autoprobe and ISA PnP. 1986*4882a593Smuzhiyun 1987*4882a593SmuzhiyunNote: To use Vibra16X cards in 16-bit half duplex mode, you must 1988*4882a593Smuzhiyundisable 16bit DMA with dma16 = -1 module parameter. 1989*4882a593SmuzhiyunAlso, all Sound Blaster 16 type cards can operate in 16-bit 1990*4882a593Smuzhiyunhalf duplex mode through 8-bit DMA channel by disabling their 1991*4882a593Smuzhiyun16-bit DMA channel. 1992*4882a593Smuzhiyun 1993*4882a593SmuzhiyunThe power-management is supported. 1994*4882a593Smuzhiyun 1995*4882a593SmuzhiyunModule snd-sc6000 1996*4882a593Smuzhiyun----------------- 1997*4882a593Smuzhiyun 1998*4882a593SmuzhiyunModule for Gallant SC-6000 soundcard and later models: SC-6600 and 1999*4882a593SmuzhiyunSC-7000. 2000*4882a593Smuzhiyun 2001*4882a593Smuzhiyunport 2002*4882a593Smuzhiyun Port # (0x220 or 0x240) 2003*4882a593Smuzhiyunmss_port 2004*4882a593Smuzhiyun MSS Port # (0x530 or 0xe80) 2005*4882a593Smuzhiyunirq 2006*4882a593Smuzhiyun IRQ # (5,7,9,10,11) 2007*4882a593Smuzhiyunmpu_irq 2008*4882a593Smuzhiyun MPU-401 IRQ # (5,7,9,10) ,0 - no MPU-401 irq 2009*4882a593Smuzhiyundma 2010*4882a593Smuzhiyun DMA # (1,3,0) 2011*4882a593Smuzhiyunjoystick 2012*4882a593Smuzhiyun Enable gameport - 0 = disable (default), 1 = enable 2013*4882a593Smuzhiyun 2014*4882a593SmuzhiyunThis module supports multiple cards. 2015*4882a593Smuzhiyun 2016*4882a593SmuzhiyunThis card is also known as Audio Excel DSP 16 or Zoltrix AV302. 2017*4882a593Smuzhiyun 2018*4882a593SmuzhiyunModule snd-sscape 2019*4882a593Smuzhiyun----------------- 2020*4882a593Smuzhiyun 2021*4882a593SmuzhiyunModule for ENSONIQ SoundScape cards. 2022*4882a593Smuzhiyun 2023*4882a593Smuzhiyunport 2024*4882a593Smuzhiyun Port # (PnP setup) 2025*4882a593Smuzhiyunwss_port 2026*4882a593Smuzhiyun WSS Port # (PnP setup) 2027*4882a593Smuzhiyunirq 2028*4882a593Smuzhiyun IRQ # (PnP setup) 2029*4882a593Smuzhiyunmpu_irq 2030*4882a593Smuzhiyun MPU-401 IRQ # (PnP setup) 2031*4882a593Smuzhiyundma 2032*4882a593Smuzhiyun DMA # (PnP setup) 2033*4882a593Smuzhiyundma2 2034*4882a593Smuzhiyun 2nd DMA # (PnP setup, -1 to disable) 2035*4882a593Smuzhiyunjoystick 2036*4882a593Smuzhiyun Enable gameport - 0 = disable (default), 1 = enable 2037*4882a593Smuzhiyun 2038*4882a593SmuzhiyunThis module supports multiple cards. 2039*4882a593Smuzhiyun 2040*4882a593SmuzhiyunThe driver requires the firmware loader support on kernel. 2041*4882a593Smuzhiyun 2042*4882a593SmuzhiyunModule snd-sun-amd7930 (on sparc only) 2043*4882a593Smuzhiyun-------------------------------------- 2044*4882a593Smuzhiyun 2045*4882a593SmuzhiyunModule for AMD7930 sound chips found on Sparcs. 2046*4882a593Smuzhiyun 2047*4882a593SmuzhiyunThis module supports multiple cards. 2048*4882a593Smuzhiyun 2049*4882a593SmuzhiyunModule snd-sun-cs4231 (on sparc only) 2050*4882a593Smuzhiyun------------------------------------- 2051*4882a593Smuzhiyun 2052*4882a593SmuzhiyunModule for CS4231 sound chips found on Sparcs. 2053*4882a593Smuzhiyun 2054*4882a593SmuzhiyunThis module supports multiple cards. 2055*4882a593Smuzhiyun 2056*4882a593SmuzhiyunModule snd-sun-dbri (on sparc only) 2057*4882a593Smuzhiyun----------------------------------- 2058*4882a593Smuzhiyun 2059*4882a593SmuzhiyunModule for DBRI sound chips found on Sparcs. 2060*4882a593Smuzhiyun 2061*4882a593SmuzhiyunThis module supports multiple cards. 2062*4882a593Smuzhiyun 2063*4882a593SmuzhiyunModule snd-wavefront 2064*4882a593Smuzhiyun-------------------- 2065*4882a593Smuzhiyun 2066*4882a593SmuzhiyunModule for Turtle Beach Maui, Tropez and Tropez+ sound cards. 2067*4882a593Smuzhiyun 2068*4882a593Smuzhiyunuse_cs4232_midi 2069*4882a593Smuzhiyun Use CS4232 MPU-401 interface 2070*4882a593Smuzhiyun (inaccessibly located inside your computer) 2071*4882a593Smuzhiyunisapnp 2072*4882a593Smuzhiyun ISA PnP detection - 0 = disable, 1 = enable (default) 2073*4882a593Smuzhiyun 2074*4882a593Smuzhiyunwith isapnp=0, the following options are available: 2075*4882a593Smuzhiyun 2076*4882a593Smuzhiyuncs4232_pcm_port 2077*4882a593Smuzhiyun Port # for CS4232 PCM interface. 2078*4882a593Smuzhiyuncs4232_pcm_irq 2079*4882a593Smuzhiyun IRQ # for CS4232 PCM interface (5,7,9,11,12,15). 2080*4882a593Smuzhiyuncs4232_mpu_port 2081*4882a593Smuzhiyun Port # for CS4232 MPU-401 interface. 2082*4882a593Smuzhiyuncs4232_mpu_irq 2083*4882a593Smuzhiyun IRQ # for CS4232 MPU-401 interface (9,11,12,15). 2084*4882a593Smuzhiyunics2115_port 2085*4882a593Smuzhiyun Port # for ICS2115 2086*4882a593Smuzhiyunics2115_irq 2087*4882a593Smuzhiyun IRQ # for ICS2115 2088*4882a593Smuzhiyunfm_port 2089*4882a593Smuzhiyun FM OPL-3 Port # 2090*4882a593Smuzhiyundma1 2091*4882a593Smuzhiyun DMA1 # for CS4232 PCM interface. 2092*4882a593Smuzhiyundma2 2093*4882a593Smuzhiyun DMA2 # for CS4232 PCM interface. 2094*4882a593Smuzhiyun 2095*4882a593SmuzhiyunThe below are options for wavefront_synth features: 2096*4882a593Smuzhiyun 2097*4882a593Smuzhiyunwf_raw 2098*4882a593Smuzhiyun Assume that we need to boot the OS (default:no); 2099*4882a593Smuzhiyun If yes, then during driver loading, the state of the board is 2100*4882a593Smuzhiyun ignored, and we reset the board and load the firmware anyway. 2101*4882a593Smuzhiyunfx_raw 2102*4882a593Smuzhiyun Assume that the FX process needs help (default:yes); 2103*4882a593Smuzhiyun If false, we'll leave the FX processor in whatever state it is 2104*4882a593Smuzhiyun when the driver is loaded. The default is to download the 2105*4882a593Smuzhiyun microprogram and associated coefficients to set it up for 2106*4882a593Smuzhiyun "default" operation, whatever that means. 2107*4882a593Smuzhiyundebug_default 2108*4882a593Smuzhiyun Debug parameters for card initialization 2109*4882a593Smuzhiyunwait_usecs 2110*4882a593Smuzhiyun How long to wait without sleeping, usecs (default:150); 2111*4882a593Smuzhiyun This magic number seems to give pretty optimal throughput 2112*4882a593Smuzhiyun based on my limited experimentation. 2113*4882a593Smuzhiyun If you want to play around with it and find a better value, be 2114*4882a593Smuzhiyun my guest. Remember, the idea is to get a number that causes us 2115*4882a593Smuzhiyun to just busy wait for as many WaveFront commands as possible, 2116*4882a593Smuzhiyun without coming up with a number so large that we hog the whole 2117*4882a593Smuzhiyun CPU. 2118*4882a593Smuzhiyun Specifically, with this number, out of about 134,000 status 2119*4882a593Smuzhiyun waits, only about 250 result in a sleep. 2120*4882a593Smuzhiyunsleep_interval 2121*4882a593Smuzhiyun How long to sleep when waiting for reply (default: 100) 2122*4882a593Smuzhiyunsleep_tries 2123*4882a593Smuzhiyun How many times to try sleeping during a wait (default: 50) 2124*4882a593Smuzhiyunospath 2125*4882a593Smuzhiyun Pathname to processed ICS2115 OS firmware (default:wavefront.os); 2126*4882a593Smuzhiyun The path name of the ISC2115 OS firmware. In the recent 2127*4882a593Smuzhiyun version, it's handled via firmware loader framework, so it 2128*4882a593Smuzhiyun must be installed in the proper path, typically, 2129*4882a593Smuzhiyun /lib/firmware. 2130*4882a593Smuzhiyunreset_time 2131*4882a593Smuzhiyun How long to wait for a reset to take effect (default:2) 2132*4882a593Smuzhiyunramcheck_time 2133*4882a593Smuzhiyun How many seconds to wait for the RAM test (default:20) 2134*4882a593Smuzhiyunosrun_time 2135*4882a593Smuzhiyun How many seconds to wait for the ICS2115 OS (default:10) 2136*4882a593Smuzhiyun 2137*4882a593SmuzhiyunThis module supports multiple cards and ISA PnP. 2138*4882a593Smuzhiyun 2139*4882a593SmuzhiyunNote: the firmware file ``wavefront.os`` was located in the earlier 2140*4882a593Smuzhiyunversion in /etc. Now it's loaded via firmware loader, and 2141*4882a593Smuzhiyunmust be in the proper firmware path, such as /lib/firmware. 2142*4882a593SmuzhiyunCopy (or symlink) the file appropriately if you get an error 2143*4882a593Smuzhiyunregarding firmware downloading after upgrading the kernel. 2144*4882a593Smuzhiyun 2145*4882a593SmuzhiyunModule snd-sonicvibes 2146*4882a593Smuzhiyun--------------------- 2147*4882a593Smuzhiyun 2148*4882a593SmuzhiyunModule for S3 SonicVibes PCI sound cards. 2149*4882a593Smuzhiyun* PINE Schubert 32 PCI 2150*4882a593Smuzhiyun 2151*4882a593Smuzhiyunreverb 2152*4882a593Smuzhiyun Reverb Enable - 1 = enable, 0 = disable (default); 2153*4882a593Smuzhiyun SoundCard must have onboard SRAM for this. 2154*4882a593Smuzhiyunmge 2155*4882a593Smuzhiyun Mic Gain Enable - 1 = enable, 0 = disable (default) 2156*4882a593Smuzhiyun 2157*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 2158*4882a593Smuzhiyun 2159*4882a593SmuzhiyunModule snd-serial-u16550 2160*4882a593Smuzhiyun------------------------ 2161*4882a593Smuzhiyun 2162*4882a593SmuzhiyunModule for UART16550A serial MIDI ports. 2163*4882a593Smuzhiyun 2164*4882a593Smuzhiyunport 2165*4882a593Smuzhiyun port # for UART16550A chip 2166*4882a593Smuzhiyunirq 2167*4882a593Smuzhiyun IRQ # for UART16550A chip, -1 = poll mode 2168*4882a593Smuzhiyunspeed 2169*4882a593Smuzhiyun speed in bauds (9600,19200,38400,57600,115200) 2170*4882a593Smuzhiyun 38400 = default 2171*4882a593Smuzhiyunbase 2172*4882a593Smuzhiyun base for divisor in bauds (57600,115200,230400,460800) 2173*4882a593Smuzhiyun 115200 = default 2174*4882a593Smuzhiyunouts 2175*4882a593Smuzhiyun number of MIDI ports in a serial port (1-4) 2176*4882a593Smuzhiyun 1 = default 2177*4882a593Smuzhiyunadaptor 2178*4882a593Smuzhiyun Type of adaptor. 2179*4882a593Smuzhiyun 0 = Soundcanvas, 1 = MS-124T, 2 = MS-124W S/A, 2180*4882a593Smuzhiyun 3 = MS-124W M/B, 4 = Generic 2181*4882a593Smuzhiyun 2182*4882a593SmuzhiyunThis module supports multiple cards. This module does not support autoprobe 2183*4882a593Smuzhiyunthus the main port must be specified!!! Other options are optional. 2184*4882a593Smuzhiyun 2185*4882a593SmuzhiyunModule snd-trident 2186*4882a593Smuzhiyun------------------ 2187*4882a593Smuzhiyun 2188*4882a593SmuzhiyunModule for Trident 4DWave DX/NX sound cards. 2189*4882a593Smuzhiyun* Best Union Miss Melody 4DWave PCI 2190*4882a593Smuzhiyun* HIS 4DWave PCI 2191*4882a593Smuzhiyun* Warpspeed ONSpeed 4DWave PCI 2192*4882a593Smuzhiyun* AzTech PCI 64-Q3D 2193*4882a593Smuzhiyun* Addonics SV 750 2194*4882a593Smuzhiyun* CHIC True Sound 4Dwave 2195*4882a593Smuzhiyun* Shark Predator4D-PCI 2196*4882a593Smuzhiyun* Jaton SonicWave 4D 2197*4882a593Smuzhiyun* SiS SI7018 PCI Audio 2198*4882a593Smuzhiyun* Hoontech SoundTrack Digital 4DWave NX 2199*4882a593Smuzhiyun 2200*4882a593Smuzhiyunpcm_channels 2201*4882a593Smuzhiyun max channels (voices) reserved for PCM 2202*4882a593Smuzhiyunwavetable_size 2203*4882a593Smuzhiyun max wavetable size in kB (4-?kb) 2204*4882a593Smuzhiyun 2205*4882a593SmuzhiyunThis module supports multiple cards and autoprobe. 2206*4882a593Smuzhiyun 2207*4882a593SmuzhiyunThe power-management is supported. 2208*4882a593Smuzhiyun 2209*4882a593SmuzhiyunModule snd-ua101 2210*4882a593Smuzhiyun---------------- 2211*4882a593Smuzhiyun 2212*4882a593SmuzhiyunModule for the Edirol UA-101/UA-1000 audio/MIDI interfaces. 2213*4882a593Smuzhiyun 2214*4882a593SmuzhiyunThis module supports multiple devices, autoprobe and hotplugging. 2215*4882a593Smuzhiyun 2216*4882a593SmuzhiyunModule snd-usb-audio 2217*4882a593Smuzhiyun-------------------- 2218*4882a593Smuzhiyun 2219*4882a593SmuzhiyunModule for USB audio and USB MIDI devices. 2220*4882a593Smuzhiyun 2221*4882a593Smuzhiyunvid 2222*4882a593Smuzhiyun Vendor ID for the device (optional) 2223*4882a593Smuzhiyunpid 2224*4882a593Smuzhiyun Product ID for the device (optional) 2225*4882a593Smuzhiyunnrpacks 2226*4882a593Smuzhiyun Max. number of packets per URB (default: 8) 2227*4882a593Smuzhiyundevice_setup 2228*4882a593Smuzhiyun Device specific magic number (optional); 2229*4882a593Smuzhiyun Influence depends on the device 2230*4882a593Smuzhiyun Default: 0x0000 2231*4882a593Smuzhiyunignore_ctl_error 2232*4882a593Smuzhiyun Ignore any USB-controller regarding mixer interface (default: no) 2233*4882a593Smuzhiyunautoclock 2234*4882a593Smuzhiyun Enable auto-clock selection for UAC2 devices (default: yes) 2235*4882a593Smuzhiyunquirk_alias 2236*4882a593Smuzhiyun Quirk alias list, pass strings like ``0123abcd:5678beef``, which 2237*4882a593Smuzhiyun applies the existing quirk for the device 5678:beef to a new 2238*4882a593Smuzhiyun device 0123:abcd. 2239*4882a593Smuzhiyunuse_vmalloc 2240*4882a593Smuzhiyun Use vmalloc() for allocations of the PCM buffers (default: yes). 2241*4882a593Smuzhiyun For architectures with non-coherent memory like ARM or MIPS, the 2242*4882a593Smuzhiyun mmap access may give inconsistent results with vmalloc'ed 2243*4882a593Smuzhiyun buffers. If mmap is used on such architectures, turn off this 2244*4882a593Smuzhiyun option, so that the DMA-coherent buffers are allocated and used 2245*4882a593Smuzhiyun instead. 2246*4882a593Smuzhiyundelayed_register 2247*4882a593Smuzhiyun The option is needed for devices that have multiple streams 2248*4882a593Smuzhiyun defined in multiple USB interfaces. The driver may invoke 2249*4882a593Smuzhiyun registrations multiple times (once per interface) and this may 2250*4882a593Smuzhiyun lead to the insufficient device enumeration. 2251*4882a593Smuzhiyun This option receives an array of strings, and you can pass 2252*4882a593Smuzhiyun ID:INTERFACE like ``0123abcd:4`` for performing the delayed 2253*4882a593Smuzhiyun registration to the given device. In this example, when a USB 2254*4882a593Smuzhiyun device 0123:abcd is probed, the driver waits the registration 2255*4882a593Smuzhiyun until the USB interface 4 gets probed. 2256*4882a593Smuzhiyun The driver prints a message like "Found post-registration device 2257*4882a593Smuzhiyun assignment: 1234abcd:04" for such a device, so that user can 2258*4882a593Smuzhiyun notice the need. 2259*4882a593Smuzhiyun 2260*4882a593SmuzhiyunThis module supports multiple devices, autoprobe and hotplugging. 2261*4882a593Smuzhiyun 2262*4882a593SmuzhiyunNB: ``nrpacks`` parameter can be modified dynamically via sysfs. 2263*4882a593SmuzhiyunDon't put the value over 20. Changing via sysfs has no sanity 2264*4882a593Smuzhiyuncheck. 2265*4882a593Smuzhiyun 2266*4882a593SmuzhiyunNB: ``ignore_ctl_error=1`` may help when you get an error at accessing 2267*4882a593Smuzhiyunthe mixer element such as URB error -22. This happens on some 2268*4882a593Smuzhiyunbuggy USB device or the controller. 2269*4882a593Smuzhiyun 2270*4882a593SmuzhiyunNB: quirk_alias option is provided only for testing / development. 2271*4882a593SmuzhiyunIf you want to have a proper support, contact to upstream for 2272*4882a593Smuzhiyunadding the matching quirk in the driver code statically. 2273*4882a593Smuzhiyun 2274*4882a593SmuzhiyunModule snd-usb-caiaq 2275*4882a593Smuzhiyun-------------------- 2276*4882a593Smuzhiyun 2277*4882a593SmuzhiyunModule for caiaq UB audio interfaces, 2278*4882a593Smuzhiyun 2279*4882a593Smuzhiyun* Native Instruments RigKontrol2 2280*4882a593Smuzhiyun* Native Instruments Kore Controller 2281*4882a593Smuzhiyun* Native Instruments Audio Kontrol 1 2282*4882a593Smuzhiyun* Native Instruments Audio 8 DJ 2283*4882a593Smuzhiyun 2284*4882a593SmuzhiyunThis module supports multiple devices, autoprobe and hotplugging. 2285*4882a593Smuzhiyun 2286*4882a593SmuzhiyunModule snd-usb-usx2y 2287*4882a593Smuzhiyun-------------------- 2288*4882a593Smuzhiyun 2289*4882a593SmuzhiyunModule for Tascam USB US-122, US-224 and US-428 devices. 2290*4882a593Smuzhiyun 2291*4882a593SmuzhiyunThis module supports multiple devices, autoprobe and hotplugging. 2292*4882a593Smuzhiyun 2293*4882a593SmuzhiyunNote: you need to load the firmware via ``usx2yloader`` utility included 2294*4882a593Smuzhiyunin alsa-tools and alsa-firmware packages. 2295*4882a593Smuzhiyun 2296*4882a593SmuzhiyunModule snd-via82xx 2297*4882a593Smuzhiyun------------------ 2298*4882a593Smuzhiyun 2299*4882a593SmuzhiyunModule for AC'97 motherboards based on VIA 82C686A/686B, 8233, 8233A, 2300*4882a593Smuzhiyun8233C, 8235, 8237 (south) bridge. 2301*4882a593Smuzhiyun 2302*4882a593Smuzhiyunmpu_port 2303*4882a593Smuzhiyun 0x300,0x310,0x320,0x330, otherwise obtain BIOS setup 2304*4882a593Smuzhiyun [VIA686A/686B only] 2305*4882a593Smuzhiyunjoystick 2306*4882a593Smuzhiyun Enable joystick (default off) [VIA686A/686B only] 2307*4882a593Smuzhiyunac97_clock 2308*4882a593Smuzhiyun AC'97 codec clock base (default 48000Hz) 2309*4882a593Smuzhiyundxs_support 2310*4882a593Smuzhiyun support DXS channels, 0 = auto (default), 1 = enable, 2 = disable, 2311*4882a593Smuzhiyun 3 = 48k only, 4 = no VRA, 5 = enable any sample rate and different 2312*4882a593Smuzhiyun sample rates on different channels [VIA8233/C, 8235, 8237 only] 2313*4882a593Smuzhiyunac97_quirk 2314*4882a593Smuzhiyun AC'97 workaround for strange hardware; 2315*4882a593Smuzhiyun See `AC97 Quirk Option`_ section below. 2316*4882a593Smuzhiyun 2317*4882a593SmuzhiyunThis module supports one chip and autoprobe. 2318*4882a593Smuzhiyun 2319*4882a593SmuzhiyunNote: on some SMP motherboards like MSI 694D the interrupts might 2320*4882a593Smuzhiyunnot be generated properly. In such a case, please try to 2321*4882a593Smuzhiyunset the SMP (or MPS) version on BIOS to 1.1 instead of 2322*4882a593Smuzhiyundefault value 1.4. Then the interrupt number will be 2323*4882a593Smuzhiyunassigned under 15. You might also upgrade your BIOS. 2324*4882a593Smuzhiyun 2325*4882a593SmuzhiyunNote: VIA8233/5/7 (not VIA8233A) can support DXS (direct sound) 2326*4882a593Smuzhiyunchannels as the first PCM. On these channels, up to 4 2327*4882a593Smuzhiyunstreams can be played at the same time, and the controller 2328*4882a593Smuzhiyuncan perform sample rate conversion with separate rates for 2329*4882a593Smuzhiyuneach channel. 2330*4882a593SmuzhiyunAs default (``dxs_support = 0``), 48k fixed rate is chosen 2331*4882a593Smuzhiyunexcept for the known devices since the output is often 2332*4882a593Smuzhiyunnoisy except for 48k on some mother boards due to the 2333*4882a593Smuzhiyunbug of BIOS. 2334*4882a593SmuzhiyunPlease try once ``dxs_support=5`` and if it works on other 2335*4882a593Smuzhiyunsample rates (e.g. 44.1kHz of mp3 playback), please let us 2336*4882a593Smuzhiyunknow the PCI subsystem vendor/device id's (output of 2337*4882a593Smuzhiyun``lspci -nv``). 2338*4882a593SmuzhiyunIf ``dxs_support=5`` does not work, try ``dxs_support=4``; if it 2339*4882a593Smuzhiyundoesn't work too, try dxs_support=1. (dxs_support=1 is 2340*4882a593Smuzhiyunusually for old motherboards. The correct implemented 2341*4882a593Smuzhiyunboard should work with 4 or 5.) If it still doesn't 2342*4882a593Smuzhiyunwork and the default setting is ok, ``dxs_support=3`` is the 2343*4882a593Smuzhiyunright choice. If the default setting doesn't work at all, 2344*4882a593Smuzhiyuntry ``dxs_support=2`` to disable the DXS channels. 2345*4882a593SmuzhiyunIn any cases, please let us know the result and the 2346*4882a593Smuzhiyunsubsystem vendor/device ids. See `Links and Addresses`_ 2347*4882a593Smuzhiyunbelow. 2348*4882a593Smuzhiyun 2349*4882a593SmuzhiyunNote: for the MPU401 on VIA823x, use snd-mpu401 driver 2350*4882a593Smuzhiyunadditionally. The mpu_port option is for VIA686 chips only. 2351*4882a593Smuzhiyun 2352*4882a593SmuzhiyunThe power-management is supported. 2353*4882a593Smuzhiyun 2354*4882a593SmuzhiyunModule snd-via82xx-modem 2355*4882a593Smuzhiyun------------------------ 2356*4882a593Smuzhiyun 2357*4882a593SmuzhiyunModule for VIA82xx AC97 modem 2358*4882a593Smuzhiyun 2359*4882a593Smuzhiyunac97_clock 2360*4882a593Smuzhiyun AC'97 codec clock base (default 48000Hz) 2361*4882a593Smuzhiyun 2362*4882a593SmuzhiyunThis module supports one card and autoprobe. 2363*4882a593Smuzhiyun 2364*4882a593SmuzhiyunNote: The default index value of this module is -2, i.e. the first 2365*4882a593Smuzhiyunslot is excluded. 2366*4882a593Smuzhiyun 2367*4882a593SmuzhiyunThe power-management is supported. 2368*4882a593Smuzhiyun 2369*4882a593SmuzhiyunModule snd-virmidi 2370*4882a593Smuzhiyun------------------ 2371*4882a593Smuzhiyun 2372*4882a593SmuzhiyunModule for virtual rawmidi devices. 2373*4882a593SmuzhiyunThis module creates virtual rawmidi devices which communicate 2374*4882a593Smuzhiyunto the corresponding ALSA sequencer ports. 2375*4882a593Smuzhiyun 2376*4882a593Smuzhiyunmidi_devs 2377*4882a593Smuzhiyun MIDI devices # (1-4, default=4) 2378*4882a593Smuzhiyun 2379*4882a593SmuzhiyunThis module supports multiple cards. 2380*4882a593Smuzhiyun 2381*4882a593SmuzhiyunModule snd-virtuoso 2382*4882a593Smuzhiyun------------------- 2383*4882a593Smuzhiyun 2384*4882a593SmuzhiyunModule for sound cards based on the Asus AV66/AV100/AV200 chips, 2385*4882a593Smuzhiyuni.e., Xonar D1, DX, D2, D2X, DS, DSX, Essence ST (Deluxe), 2386*4882a593SmuzhiyunEssence STX (II), HDAV1.3 (Deluxe), and HDAV1.3 Slim. 2387*4882a593Smuzhiyun 2388*4882a593SmuzhiyunThis module supports autoprobe and multiple cards. 2389*4882a593Smuzhiyun 2390*4882a593SmuzhiyunModule snd-vx222 2391*4882a593Smuzhiyun---------------- 2392*4882a593Smuzhiyun 2393*4882a593SmuzhiyunModule for Digigram VX-Pocket VX222, V222 v2 and Mic cards. 2394*4882a593Smuzhiyun 2395*4882a593Smuzhiyunmic 2396*4882a593Smuzhiyun Enable Microphone on V222 Mic (NYI) 2397*4882a593Smuzhiyunibl 2398*4882a593Smuzhiyun Capture IBL size. (default = 0, minimum size) 2399*4882a593Smuzhiyun 2400*4882a593SmuzhiyunThis module supports multiple cards. 2401*4882a593Smuzhiyun 2402*4882a593SmuzhiyunWhen the driver is compiled as a module and the hotplug firmware 2403*4882a593Smuzhiyunis supported, the firmware data is loaded via hotplug automatically. 2404*4882a593SmuzhiyunInstall the necessary firmware files in alsa-firmware package. 2405*4882a593SmuzhiyunWhen no hotplug fw loader is available, you need to load the 2406*4882a593Smuzhiyunfirmware via vxloader utility in alsa-tools package. To invoke 2407*4882a593Smuzhiyunvxloader automatically, add the following to /etc/modprobe.d/alsa.conf 2408*4882a593Smuzhiyun 2409*4882a593Smuzhiyun:: 2410*4882a593Smuzhiyun 2411*4882a593Smuzhiyun install snd-vx222 /sbin/modprobe --first-time -i snd-vx222\ 2412*4882a593Smuzhiyun && /usr/bin/vxloader 2413*4882a593Smuzhiyun 2414*4882a593Smuzhiyun(for 2.2/2.4 kernels, add ``post-install /usr/bin/vxloader`` to 2415*4882a593Smuzhiyun/etc/modules.conf, instead.) 2416*4882a593SmuzhiyunIBL size defines the interrupts period for PCM. The smaller size 2417*4882a593Smuzhiyungives smaller latency but leads to more CPU consumption, too. 2418*4882a593SmuzhiyunThe size is usually aligned to 126. As default (=0), the smallest 2419*4882a593Smuzhiyunsize is chosen. The possible IBL values can be found in 2420*4882a593Smuzhiyun/proc/asound/cardX/vx-status proc file. 2421*4882a593Smuzhiyun 2422*4882a593SmuzhiyunThe power-management is supported. 2423*4882a593Smuzhiyun 2424*4882a593SmuzhiyunModule snd-vxpocket 2425*4882a593Smuzhiyun------------------- 2426*4882a593Smuzhiyun 2427*4882a593SmuzhiyunModule for Digigram VX-Pocket VX2 and 440 PCMCIA cards. 2428*4882a593Smuzhiyun 2429*4882a593Smuzhiyunibl 2430*4882a593Smuzhiyun Capture IBL size. (default = 0, minimum size) 2431*4882a593Smuzhiyun 2432*4882a593SmuzhiyunThis module supports multiple cards. The module is compiled only when 2433*4882a593SmuzhiyunPCMCIA is supported on kernel. 2434*4882a593Smuzhiyun 2435*4882a593SmuzhiyunWith the older 2.6.x kernel, to activate the driver via the card 2436*4882a593Smuzhiyunmanager, you'll need to set up /etc/pcmcia/vxpocket.conf. See the 2437*4882a593Smuzhiyunsound/pcmcia/vx/vxpocket.c. 2.6.13 or later kernel requires no 2438*4882a593Smuzhiyunlonger require a config file. 2439*4882a593Smuzhiyun 2440*4882a593SmuzhiyunWhen the driver is compiled as a module and the hotplug firmware 2441*4882a593Smuzhiyunis supported, the firmware data is loaded via hotplug automatically. 2442*4882a593SmuzhiyunInstall the necessary firmware files in alsa-firmware package. 2443*4882a593SmuzhiyunWhen no hotplug fw loader is available, you need to load the 2444*4882a593Smuzhiyunfirmware via vxloader utility in alsa-tools package. 2445*4882a593Smuzhiyun 2446*4882a593SmuzhiyunAbout capture IBL, see the description of snd-vx222 module. 2447*4882a593Smuzhiyun 2448*4882a593SmuzhiyunNote: snd-vxp440 driver is merged to snd-vxpocket driver since 2449*4882a593SmuzhiyunALSA 1.0.10. 2450*4882a593Smuzhiyun 2451*4882a593SmuzhiyunThe power-management is supported. 2452*4882a593Smuzhiyun 2453*4882a593SmuzhiyunModule snd-ymfpci 2454*4882a593Smuzhiyun----------------- 2455*4882a593Smuzhiyun 2456*4882a593SmuzhiyunModule for Yamaha PCI chips (YMF72x, YMF74x & YMF75x). 2457*4882a593Smuzhiyun 2458*4882a593Smuzhiyunmpu_port 2459*4882a593Smuzhiyun 0x300,0x330,0x332,0x334, 0 (disable) by default, 2460*4882a593Smuzhiyun 1 (auto-detect for YMF744/754 only) 2461*4882a593Smuzhiyunfm_port 2462*4882a593Smuzhiyun 0x388,0x398,0x3a0,0x3a8, 0 (disable) by default 2463*4882a593Smuzhiyun 1 (auto-detect for YMF744/754 only) 2464*4882a593Smuzhiyunjoystick_port 2465*4882a593Smuzhiyun 0x201,0x202,0x204,0x205, 0 (disable) by default, 2466*4882a593Smuzhiyun 1 (auto-detect) 2467*4882a593Smuzhiyunrear_switch 2468*4882a593Smuzhiyun enable shared rear/line-in switch (bool) 2469*4882a593Smuzhiyun 2470*4882a593SmuzhiyunThis module supports autoprobe and multiple chips. 2471*4882a593Smuzhiyun 2472*4882a593SmuzhiyunThe power-management is supported. 2473*4882a593Smuzhiyun 2474*4882a593SmuzhiyunModule snd-pdaudiocf 2475*4882a593Smuzhiyun-------------------- 2476*4882a593Smuzhiyun 2477*4882a593SmuzhiyunModule for Sound Core PDAudioCF sound card. 2478*4882a593Smuzhiyun 2479*4882a593SmuzhiyunThe power-management is supported. 2480*4882a593Smuzhiyun 2481*4882a593Smuzhiyun 2482*4882a593SmuzhiyunAC97 Quirk Option 2483*4882a593Smuzhiyun================= 2484*4882a593Smuzhiyun 2485*4882a593SmuzhiyunThe ac97_quirk option is used to enable/override the workaround for 2486*4882a593Smuzhiyunspecific devices on drivers for on-board AC'97 controllers like 2487*4882a593Smuzhiyunsnd-intel8x0. Some hardware have swapped output pins between Master 2488*4882a593Smuzhiyunand Headphone, or Surround (thanks to confusion of AC'97 2489*4882a593Smuzhiyunspecifications from version to version :-) 2490*4882a593Smuzhiyun 2491*4882a593SmuzhiyunThe driver provides the auto-detection of known problematic devices, 2492*4882a593Smuzhiyunbut some might be unknown or wrongly detected. In such a case, pass 2493*4882a593Smuzhiyunthe proper value with this option. 2494*4882a593Smuzhiyun 2495*4882a593SmuzhiyunThe following strings are accepted: 2496*4882a593Smuzhiyun 2497*4882a593Smuzhiyundefault 2498*4882a593Smuzhiyun Don't override the default setting 2499*4882a593Smuzhiyunnone 2500*4882a593Smuzhiyun Disable the quirk 2501*4882a593Smuzhiyunhp_only 2502*4882a593Smuzhiyun Bind Master and Headphone controls as a single control 2503*4882a593Smuzhiyunswap_hp 2504*4882a593Smuzhiyun Swap headphone and master controls 2505*4882a593Smuzhiyunswap_surround 2506*4882a593Smuzhiyun Swap master and surround controls 2507*4882a593Smuzhiyunad_sharing 2508*4882a593Smuzhiyun For AD1985, turn on OMS bit and use headphone 2509*4882a593Smuzhiyunalc_jack 2510*4882a593Smuzhiyun For ALC65x, turn on the jack sense mode 2511*4882a593Smuzhiyuninv_eapd 2512*4882a593Smuzhiyun Inverted EAPD implementation 2513*4882a593Smuzhiyunmute_led 2514*4882a593Smuzhiyun Bind EAPD bit for turning on/off mute LED 2515*4882a593Smuzhiyun 2516*4882a593SmuzhiyunFor backward compatibility, the corresponding integer value -1, 0, ... 2517*4882a593Smuzhiyunare accepted, too. 2518*4882a593Smuzhiyun 2519*4882a593SmuzhiyunFor example, if ``Master`` volume control has no effect on your device 2520*4882a593Smuzhiyunbut only ``Headphone`` does, pass ac97_quirk=hp_only module option. 2521*4882a593Smuzhiyun 2522*4882a593Smuzhiyun 2523*4882a593SmuzhiyunConfiguring Non-ISAPNP Cards 2524*4882a593Smuzhiyun============================ 2525*4882a593Smuzhiyun 2526*4882a593SmuzhiyunWhen the kernel is configured with ISA-PnP support, the modules 2527*4882a593Smuzhiyunsupporting the isapnp cards will have module options ``isapnp``. 2528*4882a593SmuzhiyunIf this option is set, *only* the ISA-PnP devices will be probed. 2529*4882a593SmuzhiyunFor probing the non ISA-PnP cards, you have to pass ``isapnp=0`` option 2530*4882a593Smuzhiyuntogether with the proper i/o and irq configuration. 2531*4882a593Smuzhiyun 2532*4882a593SmuzhiyunWhen the kernel is configured without ISA-PnP support, isapnp option 2533*4882a593Smuzhiyunwill be not built in. 2534*4882a593Smuzhiyun 2535*4882a593Smuzhiyun 2536*4882a593SmuzhiyunModule Autoloading Support 2537*4882a593Smuzhiyun========================== 2538*4882a593Smuzhiyun 2539*4882a593SmuzhiyunThe ALSA drivers can be loaded automatically on demand by defining 2540*4882a593Smuzhiyunmodule aliases. The string ``snd-card-%1`` is requested for ALSA native 2541*4882a593Smuzhiyundevices where ``%i`` is sound card number from zero to seven. 2542*4882a593Smuzhiyun 2543*4882a593SmuzhiyunTo auto-load an ALSA driver for OSS services, define the string 2544*4882a593Smuzhiyun``sound-slot-%i`` where ``%i`` means the slot number for OSS, which 2545*4882a593Smuzhiyuncorresponds to the card index of ALSA. Usually, define this 2546*4882a593Smuzhiyunas the same card module. 2547*4882a593Smuzhiyun 2548*4882a593SmuzhiyunAn example configuration for a single emu10k1 card is like below: 2549*4882a593Smuzhiyun:: 2550*4882a593Smuzhiyun 2551*4882a593Smuzhiyun ----- /etc/modprobe.d/alsa.conf 2552*4882a593Smuzhiyun alias snd-card-0 snd-emu10k1 2553*4882a593Smuzhiyun alias sound-slot-0 snd-emu10k1 2554*4882a593Smuzhiyun ----- /etc/modprobe.d/alsa.conf 2555*4882a593Smuzhiyun 2556*4882a593SmuzhiyunThe available number of auto-loaded sound cards depends on the module 2557*4882a593Smuzhiyunoption ``cards_limit`` of snd module. As default it's set to 1. 2558*4882a593SmuzhiyunTo enable the auto-loading of multiple cards, specify the number of 2559*4882a593Smuzhiyunsound cards in that option. 2560*4882a593Smuzhiyun 2561*4882a593SmuzhiyunWhen multiple cards are available, it'd better to specify the index 2562*4882a593Smuzhiyunnumber for each card via module option, too, so that the order of 2563*4882a593Smuzhiyuncards is kept consistent. 2564*4882a593Smuzhiyun 2565*4882a593SmuzhiyunAn example configuration for two sound cards is like below: 2566*4882a593Smuzhiyun:: 2567*4882a593Smuzhiyun 2568*4882a593Smuzhiyun ----- /etc/modprobe.d/alsa.conf 2569*4882a593Smuzhiyun # ALSA portion 2570*4882a593Smuzhiyun options snd cards_limit=2 2571*4882a593Smuzhiyun alias snd-card-0 snd-interwave 2572*4882a593Smuzhiyun alias snd-card-1 snd-ens1371 2573*4882a593Smuzhiyun options snd-interwave index=0 2574*4882a593Smuzhiyun options snd-ens1371 index=1 2575*4882a593Smuzhiyun # OSS/Free portion 2576*4882a593Smuzhiyun alias sound-slot-0 snd-interwave 2577*4882a593Smuzhiyun alias sound-slot-1 snd-ens1371 2578*4882a593Smuzhiyun ----- /etc/modprobe.d/alsa.conf 2579*4882a593Smuzhiyun 2580*4882a593SmuzhiyunIn this example, the interwave card is always loaded as the first card 2581*4882a593Smuzhiyun(index 0) and ens1371 as the second (index 1). 2582*4882a593Smuzhiyun 2583*4882a593SmuzhiyunAlternative (and new) way to fixate the slot assignment is to use 2584*4882a593Smuzhiyun``slots`` option of snd module. In the case above, specify like the 2585*4882a593Smuzhiyunfollowing: 2586*4882a593Smuzhiyun:: 2587*4882a593Smuzhiyun 2588*4882a593Smuzhiyun options snd slots=snd-interwave,snd-ens1371 2589*4882a593Smuzhiyun 2590*4882a593SmuzhiyunThen, the first slot (#0) is reserved for snd-interwave driver, and 2591*4882a593Smuzhiyunthe second (#1) for snd-ens1371. You can omit index option in each 2592*4882a593Smuzhiyundriver if slots option is used (although you can still have them at 2593*4882a593Smuzhiyunthe same time as long as they don't conflict). 2594*4882a593Smuzhiyun 2595*4882a593SmuzhiyunThe slots option is especially useful for avoiding the possible 2596*4882a593Smuzhiyunhot-plugging and the resultant slot conflict. For example, in the 2597*4882a593Smuzhiyuncase above again, the first two slots are already reserved. If any 2598*4882a593Smuzhiyunother driver (e.g. snd-usb-audio) is loaded before snd-interwave or 2599*4882a593Smuzhiyunsnd-ens1371, it will be assigned to the third or later slot. 2600*4882a593Smuzhiyun 2601*4882a593SmuzhiyunWhen a module name is given with '!', the slot will be given for any 2602*4882a593Smuzhiyunmodules but that name. For example, ``slots=!snd-pcsp`` will reserve 2603*4882a593Smuzhiyunthe first slot for any modules but snd-pcsp. 2604*4882a593Smuzhiyun 2605*4882a593Smuzhiyun 2606*4882a593SmuzhiyunALSA PCM devices to OSS devices mapping 2607*4882a593Smuzhiyun======================================= 2608*4882a593Smuzhiyun:: 2609*4882a593Smuzhiyun 2610*4882a593Smuzhiyun /dev/snd/pcmC0D0[c|p] -> /dev/audio0 (/dev/audio) -> minor 4 2611*4882a593Smuzhiyun /dev/snd/pcmC0D0[c|p] -> /dev/dsp0 (/dev/dsp) -> minor 3 2612*4882a593Smuzhiyun /dev/snd/pcmC0D1[c|p] -> /dev/adsp0 (/dev/adsp) -> minor 12 2613*4882a593Smuzhiyun /dev/snd/pcmC1D0[c|p] -> /dev/audio1 -> minor 4+16 = 20 2614*4882a593Smuzhiyun /dev/snd/pcmC1D0[c|p] -> /dev/dsp1 -> minor 3+16 = 19 2615*4882a593Smuzhiyun /dev/snd/pcmC1D1[c|p] -> /dev/adsp1 -> minor 12+16 = 28 2616*4882a593Smuzhiyun /dev/snd/pcmC2D0[c|p] -> /dev/audio2 -> minor 4+32 = 36 2617*4882a593Smuzhiyun /dev/snd/pcmC2D0[c|p] -> /dev/dsp2 -> minor 3+32 = 39 2618*4882a593Smuzhiyun /dev/snd/pcmC2D1[c|p] -> /dev/adsp2 -> minor 12+32 = 44 2619*4882a593Smuzhiyun 2620*4882a593SmuzhiyunThe first number from ``/dev/snd/pcmC{X}D{Y}[c|p]`` expression means 2621*4882a593Smuzhiyunsound card number and second means device number. The ALSA devices 2622*4882a593Smuzhiyunhave either ``c`` or ``p`` suffix indicating the direction, capture and 2623*4882a593Smuzhiyunplayback, respectively. 2624*4882a593Smuzhiyun 2625*4882a593SmuzhiyunPlease note that the device mapping above may be varied via the module 2626*4882a593Smuzhiyunoptions of snd-pcm-oss module. 2627*4882a593Smuzhiyun 2628*4882a593Smuzhiyun 2629*4882a593SmuzhiyunProc interfaces (/proc/asound) 2630*4882a593Smuzhiyun============================== 2631*4882a593Smuzhiyun 2632*4882a593Smuzhiyun/proc/asound/card#/pcm#[cp]/oss 2633*4882a593Smuzhiyun------------------------------- 2634*4882a593Smuzhiyunerase 2635*4882a593Smuzhiyun erase all additional information about OSS applications 2636*4882a593Smuzhiyun 2637*4882a593Smuzhiyun<app_name> <fragments> <fragment_size> [<options>] 2638*4882a593Smuzhiyun <app_name> 2639*4882a593Smuzhiyun name of application with (higher priority) or without path 2640*4882a593Smuzhiyun <fragments> 2641*4882a593Smuzhiyun number of fragments or zero if auto 2642*4882a593Smuzhiyun <fragment_size> 2643*4882a593Smuzhiyun size of fragment in bytes or zero if auto 2644*4882a593Smuzhiyun <options> 2645*4882a593Smuzhiyun optional parameters 2646*4882a593Smuzhiyun 2647*4882a593Smuzhiyun disable 2648*4882a593Smuzhiyun the application tries to open a pcm device for 2649*4882a593Smuzhiyun this channel but does not want to use it. 2650*4882a593Smuzhiyun (Cause a bug or mmap needs) 2651*4882a593Smuzhiyun It's good for Quake etc... 2652*4882a593Smuzhiyun direct 2653*4882a593Smuzhiyun don't use plugins 2654*4882a593Smuzhiyun block 2655*4882a593Smuzhiyun force block mode (rvplayer) 2656*4882a593Smuzhiyun non-block 2657*4882a593Smuzhiyun force non-block mode 2658*4882a593Smuzhiyun whole-frag 2659*4882a593Smuzhiyun write only whole fragments (optimization affecting 2660*4882a593Smuzhiyun playback only) 2661*4882a593Smuzhiyun no-silence 2662*4882a593Smuzhiyun do not fill silence ahead to avoid clicks 2663*4882a593Smuzhiyun buggy-ptr 2664*4882a593Smuzhiyun Returns the whitespace blocks in GETOPTR ioctl 2665*4882a593Smuzhiyun instead of filled blocks 2666*4882a593Smuzhiyun 2667*4882a593SmuzhiyunExample: 2668*4882a593Smuzhiyun:: 2669*4882a593Smuzhiyun 2670*4882a593Smuzhiyun echo "x11amp 128 16384" > /proc/asound/card0/pcm0p/oss 2671*4882a593Smuzhiyun echo "squake 0 0 disable" > /proc/asound/card0/pcm0c/oss 2672*4882a593Smuzhiyun echo "rvplayer 0 0 block" > /proc/asound/card0/pcm0p/oss 2673*4882a593Smuzhiyun 2674*4882a593Smuzhiyun 2675*4882a593SmuzhiyunEarly Buffer Allocation 2676*4882a593Smuzhiyun======================= 2677*4882a593Smuzhiyun 2678*4882a593SmuzhiyunSome drivers (e.g. hdsp) require the large contiguous buffers, and 2679*4882a593Smuzhiyunsometimes it's too late to find such spaces when the driver module is 2680*4882a593Smuzhiyunactually loaded due to memory fragmentation. You can pre-allocate the 2681*4882a593SmuzhiyunPCM buffers by loading snd-page-alloc module and write commands to its 2682*4882a593Smuzhiyunproc file in prior, for example, in the early boot stage like 2683*4882a593Smuzhiyun``/etc/init.d/*.local`` scripts. 2684*4882a593Smuzhiyun 2685*4882a593SmuzhiyunReading the proc file /proc/drivers/snd-page-alloc shows the current 2686*4882a593Smuzhiyunusage of page allocation. In writing, you can send the following 2687*4882a593Smuzhiyuncommands to the snd-page-alloc driver: 2688*4882a593Smuzhiyun 2689*4882a593Smuzhiyun* add VENDOR DEVICE MASK SIZE BUFFERS 2690*4882a593Smuzhiyun 2691*4882a593SmuzhiyunVENDOR and DEVICE are PCI vendor and device IDs. They take 2692*4882a593Smuzhiyuninteger numbers (0x prefix is needed for the hex). 2693*4882a593SmuzhiyunMASK is the PCI DMA mask. Pass 0 if not restricted. 2694*4882a593SmuzhiyunSIZE is the size of each buffer to allocate. You can pass 2695*4882a593Smuzhiyunk and m suffix for KB and MB. The max number is 16MB. 2696*4882a593SmuzhiyunBUFFERS is the number of buffers to allocate. It must be greater 2697*4882a593Smuzhiyunthan 0. The max number is 4. 2698*4882a593Smuzhiyun 2699*4882a593Smuzhiyun* erase 2700*4882a593Smuzhiyun 2701*4882a593SmuzhiyunThis will erase the all pre-allocated buffers which are not in 2702*4882a593Smuzhiyunuse. 2703*4882a593Smuzhiyun 2704*4882a593Smuzhiyun 2705*4882a593SmuzhiyunLinks and Addresses 2706*4882a593Smuzhiyun=================== 2707*4882a593Smuzhiyun 2708*4882a593SmuzhiyunALSA project homepage 2709*4882a593Smuzhiyun http://www.alsa-project.org 2710*4882a593SmuzhiyunKernel Bugzilla 2711*4882a593Smuzhiyun http://bugzilla.kernel.org/ 2712*4882a593SmuzhiyunALSA Developers ML 2713*4882a593Smuzhiyun mailto:alsa-devel@alsa-project.org 2714*4882a593Smuzhiyunalsa-info.sh script 2715*4882a593Smuzhiyun https://www.alsa-project.org/alsa-info.sh 2716