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