[ALSA] hda-codec - PCI quirk for MSI laptop
[safe/jmp/linux-2.6] / sound / pci / Kconfig
index 1e2e193..581debf 100644 (file)
@@ -15,12 +15,25 @@ config SND_AD1889
          To compile this as a module, choose M here: the module
          will be called snd-ad1889.
 
+config SND_ALS300
+       tristate "Avance Logic ALS300/ALS300+"
+       depends on SND
+       select SND_PCM
+       select SND_AC97_CODEC
+       select SND_OPL3_LIB
+       help
+         Say 'Y' or 'M' to include support for Avance Logic ALS300/ALS300+
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-als300
+
 config SND_ALS4000
        tristate "Avance Logic ALS4000"
        depends on SND && ISA_DMA_API
        select SND_OPL3_LIB
        select SND_MPU401_UART
        select SND_PCM
+       select SND_SB_COMMON
        help
          Say Y here to include support for soundcards based on Avance Logic
          ALS4000 chips.
@@ -66,49 +79,64 @@ config SND_ATIIXP_MODEM
          will be called snd-atiixp-modem.
 
 config SND_AU8810
-        tristate "Aureal Advantage"
-        depends on SND
+       tristate "Aureal Advantage"
+       depends on SND
        select SND_MPU401_UART
        select SND_AC97_CODEC
-        help
+       help
          Say Y here to include support for Aureal Advantage soundcards.
 
          Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
-          3D support code is in place, but not yet useable. For more info, 
-          email the ALSA developer list, or <mjander@users.sourceforge.net>.
+         3D support code is in place, but not yet useable. For more info,
+         email the ALSA developer list, or <mjander@users.sourceforge.net>.
 
          To compile this driver as a module, choose M here: the module
          will be called snd-au8810.
+
 config SND_AU8820
-        tristate "Aureal Vortex"
-        depends on SND
+       tristate "Aureal Vortex"
+       depends on SND
        select SND_MPU401_UART
        select SND_AC97_CODEC
-        help
+       help
          Say Y here to include support for Aureal Vortex soundcards.
 
-          Supported features: Hardware Mixer and SRC. For more info, email 
-          the ALSA developer list, or <mjander@users.sourceforge.net>.
+         Supported features: Hardware Mixer and SRC. For more info, email
+         the ALSA developer list, or <mjander@users.sourceforge.net>.
 
          To compile this driver as a module, choose M here: the module
          will be called snd-au8820.
+
 config SND_AU8830
-        tristate "Aureal Vortex 2"
-        depends on SND
+       tristate "Aureal Vortex 2"
+       depends on SND
        select SND_MPU401_UART
        select SND_AC97_CODEC
-        help
+       help
          Say Y here to include support for Aureal Vortex 2 soundcards.
 
-          Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
-          3D support code is in place, but not yet useable. For more info, 
-          email the ALSA developer list, or <mjander@users.sourceforge.net>.
+         Supported features: Hardware Mixer, SRC, EQ and SPDIF output.
+         3D support code is in place, but not yet useable. For more info,
+         email the ALSA developer list, or <mjander@users.sourceforge.net>.
 
          To compile this driver as a module, choose M here: the module
          will be called snd-au8830.
+
+config SND_AW2
+       tristate "Emagic Audiowerk 2"
+       depends on SND
+       help
+         Say Y here to include support for Emagic Audiowerk 2 soundcards.
+
+         Supported features: Analog and SPDIF output. Analog or SPDIF input.
+         Note: Switch between analog and digital input does not always work.
+         It can produce continuous noise. The workaround is to switch again
+         (and again) between digital and analog input until it works.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-aw2.
+
+
 config SND_AZT3328
        tristate "Aztech AZF3328 / PCI168 (EXPERIMENTAL)"
        depends on SND && EXPERIMENTAL
@@ -123,10 +151,10 @@ config SND_AZT3328
          will be called snd-azt3328.
 
 config SND_BT87X
-        tristate "Bt87x Audio Capture"
-        depends on SND
+       tristate "Bt87x Audio Capture"
+       depends on SND
        select SND_PCM
-        help
+       help
          If you want to record audio from TV cards based on
          Brooktree Bt878/Bt879 chips, say Y here and read
          <file:Documentation/sound/alsa/Bt87x.txt>.
@@ -149,6 +177,7 @@ config SND_CA0106
        depends on SND
        select SND_AC97_CODEC
        select SND_RAWMIDI
+       select SND_VMASTER
        help
          Say Y here to include support for the Sound Blaster Audigy LS
          and Live 24bit.
@@ -157,19 +186,43 @@ config SND_CA0106
          will be called snd-ca0106.
 
 config SND_CMIPCI
-       tristate "C-Media 8738, 8338"
+       tristate "C-Media 8338, 8738, 8768, 8770"
        depends on SND
        select SND_OPL3_LIB
        select SND_MPU401_UART
        select SND_PCM
        help
-         If you want to use soundcards based on C-Media CMI8338 or CMI8738
-         chips, say Y here and read
+         If you want to use soundcards based on C-Media CMI8338, CMI8738,
+         CMI8768 or CMI8770 chips, say Y here and read
          <file:Documentation/sound/alsa/CMIPCI.txt>.
 
          To compile this driver as a module, choose M here: the module
          will be called snd-cmipci.
 
+config SND_OXYGEN_LIB
+        tristate
+       depends on SND
+       select SND_PCM
+       select SND_MPU401_UART
+
+config SND_OXYGEN
+       tristate "C-Media 8788 (Oxygen)"
+       depends on SND
+       select SND_OXYGEN_LIB
+       help
+         Say Y here to include support for sound cards based on the
+         C-Media CMI8788 (Oxygen HD Audio) chip:
+          * Asound A-8788
+          * AuzenTech X-Meridian
+          * Bgears b-Enspirer
+          * Club3D Theatron DTS
+          * HT-Omega Claro
+          * Razer Barracuda AC-1
+          * Sondigo Inferno
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-oxygen.
+
 config SND_CS4281
        tristate "Cirrus Logic (Sound Fusion) CS4281"
        depends on SND
@@ -195,29 +248,183 @@ config SND_CS46XX
          will be called snd-cs46xx.
 
 config SND_CS46XX_NEW_DSP
-       bool "Cirrus Logic (Sound Fusion) New DSP support (EXPERIMENTAL)"
-       depends on SND_CS46XX && EXPERIMENTAL
+       bool "Cirrus Logic (Sound Fusion) New DSP support"
+       depends on SND_CS46XX
+       default y
        help
          Say Y here to use a new DSP image for SPDIF and dual codecs.
 
          This works better than the old code, so say Y.
 
+config SND_CS5530
+       tristate "CS5530 Audio"
+       depends on SND && ISA_DMA_API
+       select SND_SB16_DSP
+       help
+         Say Y here to include support for audio on Cyrix/NatSemi CS5530 chips.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-cs5530.
+
 config SND_CS5535AUDIO
-       tristate "CS5535 Audio"
+       tristate "CS5535/CS5536 Audio"
        depends on SND && X86 && !X86_64
        select SND_PCM
        select SND_AC97_CODEC
        help
          Say Y here to include support for audio on CS5535 chips. It is
          referred to as NS CS5535 IO or AMD CS5535 IO companion in
-         various literature.
+         various literature. This driver also supports the CS5536 audio
+         device. However, for both chips, on certain boards, you may
+         need to use ac97_quirk=hp_only if your board has physically
+         mapped headphone out to master output. If that works for you,
+         send lspci -vvv output to the mailing list so that your board
+         can be identified in the quirks list.
 
          To compile this driver as a module, choose M here: the module
          will be called snd-cs5535audio.
 
+config SND_DARLA20
+       tristate "(Echoaudio) Darla20"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Darla.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-darla20
+
+config SND_GINA20
+       tristate "(Echoaudio) Gina20"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Gina.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-gina20
+
+config SND_LAYLA20
+       tristate "(Echoaudio) Layla20"
+       depends on SND
+       select FW_LOADER
+       select SND_RAWMIDI
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Layla.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-layla20
+
+config SND_DARLA24
+       tristate "(Echoaudio) Darla24"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Darla24.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-darla24
+
+config SND_GINA24
+       tristate "(Echoaudio) Gina24"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Gina24.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-gina24
+
+config SND_LAYLA24
+       tristate "(Echoaudio) Layla24"
+       depends on SND
+       select FW_LOADER
+       select SND_RAWMIDI
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Layla24.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-layla24
+
+config SND_MONA
+       tristate "(Echoaudio) Mona"
+       depends on SND
+       select FW_LOADER
+       select SND_RAWMIDI
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Mona.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-mona
+
+config SND_MIA
+       tristate "(Echoaudio) Mia"
+       depends on SND
+       select FW_LOADER
+       select SND_RAWMIDI
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Mia and Mia-midi.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-mia
+
+config SND_ECHO3G
+       tristate "(Echoaudio) 3G cards"
+       depends on SND
+       select FW_LOADER
+       select SND_RAWMIDI
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Gina3G and Layla3G.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-echo3g
+
+config SND_INDIGO
+       tristate "(Echoaudio) Indigo"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Indigo.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-indigo
+
+config SND_INDIGOIO
+       tristate "(Echoaudio) Indigo IO"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Indigo IO.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-indigoio
+
+config SND_INDIGODJ
+       tristate "(Echoaudio) Indigo DJ"
+       depends on SND
+       select FW_LOADER
+       select SND_PCM
+       help
+         Say 'Y' or 'M' to include support for Echoaudio Indigo DJ.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-indigodj
+
 config SND_EMU10K1
        tristate "Emu10k1 (SB Live!, Audigy, E-mu APS)"
        depends on SND
+       select FW_LOADER
        select SND_HWDEP
        select SND_RAWMIDI
        select SND_AC97_CODEC
@@ -305,22 +512,28 @@ config SND_FM801
          To compile this driver as a module, choose M here: the module
          will be called snd-fm801.
 
-config SND_FM801_TEA575X
-       tristate "ForteMedia FM801 + TEA5757 tuner"
+config SND_FM801_TEA575X_BOOL
+       bool "ForteMedia FM801 + TEA5757 tuner"
        depends on SND_FM801
-        select VIDEO_DEV
        help
          Say Y here to include support for soundcards based on the ForteMedia
          FM801 chip with a TEA5757 tuner connected to GPIO1-3 pins (Media
-         Forte SF256-PCS-02).
+         Forte SF256-PCS-02) into the snd-fm801 driver.
 
-         To compile this driver as a module, choose M here: the module
-         will be called snd-fm801-tea575x.
+         This will enable support for the old V4L1 API.
+
+config SND_FM801_TEA575X
+       tristate
+       depends on SND_FM801_TEA575X_BOOL
+       default SND_FM801
+       select VIDEO_V4L1
+       select VIDEO_DEV
 
 config SND_HDA_INTEL
        tristate "Intel HD Audio"
        depends on SND
        select SND_PCM
+       select SND_VMASTER
        help
          Say Y here to include support for Intel "High Definition
          Audio" (Azalia) motherboard devices.
@@ -328,6 +541,103 @@ config SND_HDA_INTEL
          To compile this driver as a module, choose M here: the module
          will be called snd-hda-intel.
 
+config SND_HDA_HWDEP
+       bool "Build hwdep interface for HD-audio driver"
+       depends on SND_HDA_INTEL
+       select SND_HWDEP
+       help
+         Say Y here to build a hwdep interface for HD-audio driver.
+         This interface can be used for out-of-band communication
+         with codecs for debugging purposes.
+
+config SND_HDA_CODEC_REALTEK
+       bool "Build Realtek HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include Realtek HD-audio codec support in
+         snd-hda-intel driver, such as ALC880.
+
+config SND_HDA_CODEC_ANALOG
+       bool "Build Analog Device HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include Analog Device HD-audio codec support in
+         snd-hda-intel driver, such as AD1986A.
+
+config SND_HDA_CODEC_SIGMATEL
+       bool "Build IDT/Sigmatel HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include IDT (Sigmatel) HD-audio codec support in
+         snd-hda-intel driver, such as STAC9200.
+
+config SND_HDA_CODEC_VIA
+       bool "Build VIA HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include VIA HD-audio codec support in
+         snd-hda-intel driver, such as VT1708.
+
+config SND_HDA_CODEC_ATIHDMI
+       bool "Build ATI HDMI HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include ATI HDMI HD-audio codec support in
+         snd-hda-intel driver, such as ATI RS600 HDMI.
+
+config SND_HDA_CODEC_CONEXANT
+       bool "Build Conexant HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include Conexant HD-audio codec support in
+         snd-hda-intel driver, such as CX20549.
+
+config SND_HDA_CODEC_CMEDIA
+       bool "Build C-Media HD-audio codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include C-Media HD-audio codec support in
+         snd-hda-intel driver, such as CMI9880.
+
+config SND_HDA_CODEC_SI3054
+       bool "Build Silicon Labs 3054 HD-modem codec support"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to include Silicon Labs 3054 HD-modem codec
+         (and compatibles) support in snd-hda-intel driver.
+
+config SND_HDA_GENERIC
+       bool "Enable generic HD-audio codec parser"
+       depends on SND_HDA_INTEL
+       default y
+       help
+         Say Y here to enable the generic HD-audio codec parser
+         in snd-hda-intel driver.
+
+config SND_HDA_POWER_SAVE
+       bool "Aggressive power-saving on HD-audio"
+       depends on SND_HDA_INTEL && EXPERIMENTAL
+       help
+         Say Y here to enable more aggressive power-saving mode on
+         HD-audio driver.  The power-saving timeout can be configured
+         via power_save option or over sysfs on-the-fly.
+
+config SND_HDA_POWER_SAVE_DEFAULT
+       int "Default time-out for HD-audio power-save mode"
+       depends on SND_HDA_POWER_SAVE
+       default 0
+       help
+         The default time-out value in seconds for HD-audio automatic
+         power-save mode.  0 means to disable the power-save mode.
+
 config SND_HDSP
        tristate "RME Hammerfall DSP Audio"
        depends on SND
@@ -354,6 +664,17 @@ config SND_HDSPM
          To compile this driver as a module, choose M here: the module
          will be called snd-hdspm.
 
+config SND_HIFIER
+       tristate "TempoTec HiFier Fantasia"
+       depends on SND
+       select SND_OXYGEN_LIB
+       help
+         Say Y here to include support for the MediaTek/TempoTec HiFier
+         Fantasia sound card.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-hifier.
+
 config SND_ICE1712
        tristate "ICEnsemble ICE1712 (Envy24)"
        depends on SND
@@ -376,6 +697,7 @@ config SND_ICE1724
        depends on SND
        select SND_MPU401_UART
        select SND_AC97_CODEC
+       select SND_VMASTER
        help
          Say Y here to include support for soundcards based on
          ICE/VT1724/1720 (Envy24HT/PT) chips.
@@ -402,8 +724,8 @@ config SND_INTEL8X0
          will be called snd-intel8x0.
 
 config SND_INTEL8X0M
-       tristate "Intel/SiS/nVidia/AMD MC97 Modem (EXPERIMENTAL)"
-       depends on SND && EXPERIMENTAL
+       tristate "Intel/SiS/nVidia/AMD MC97 Modem"
+       depends on SND
        select SND_AC97_CODEC
        help
          Say Y here to include support for the integrated MC97 modem on
@@ -415,6 +737,7 @@ config SND_INTEL8X0M
 config SND_KORG1212
        tristate "Korg 1212 IO"
        depends on SND
+       select FW_LOADER if !SND_KORG1212_FIRMWARE_IN_KERNEL
        select SND_PCM
        help
          Say Y here to include support for Korg 1212IO soundcards.
@@ -422,9 +745,19 @@ config SND_KORG1212
          To compile this driver as a module, choose M here: the module
          will be called snd-korg1212.
 
+config SND_KORG1212_FIRMWARE_IN_KERNEL
+       bool "In-kernel firmware for Korg1212 driver"
+       depends on SND_KORG1212
+       default y
+       help
+         Say Y here to include the static firmware built in the kernel
+         for the Korg1212 driver.  If you choose N here, you need to
+         install the firmware files from the alsa-firmware package.
+
 config SND_MAESTRO3
        tristate "ESS Allegro/Maestro3"
        depends on SND
+       select FW_LOADER if !SND_MAESTRO3_FIRMWARE_IN_KERNEL
        select SND_AC97_CODEC
        help
          Say Y here to include support for soundcards based on ESS Maestro 3
@@ -433,6 +766,15 @@ config SND_MAESTRO3
          To compile this driver as a module, choose M here: the module
          will be called snd-maestro3.
 
+config SND_MAESTRO3_FIRMWARE_IN_KERNEL
+       bool "In-kernel firmware for Maestro3 driver"
+       depends on SND_MAESTRO3
+       default y
+       help
+         Say Y here to include the static firmware built in the kernel
+         for the Maestro3 driver.  If you choose N here, you need to
+         install the firmware files from the alsa-firmware package.
+
 config SND_MIXART
        tristate "Digigram miXart"
        depends on SND
@@ -466,6 +808,19 @@ config SND_PCXHR
          To compile this driver as a module, choose M here: the module
          will be called snd-pcxhr.
 
+config SND_RIPTIDE
+       tristate "Conexant Riptide"
+       depends on SND
+       select FW_LOADER
+       select SND_OPL3_LIB
+       select SND_MPU401_UART
+       select SND_AC97_CODEC
+       help
+         Say 'Y' or 'M' to include support for Conexant Riptide chip.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-riptide
+
 config SND_RME32
        tristate "RME Digi32, 32/8, 32 PRO"
        depends on SND
@@ -500,6 +855,16 @@ config SND_RME9652
          To compile this driver as a module, choose M here: the module
          will be called snd-rme9652.
 
+config SND_SIS7019
+       tristate "SiS 7019 Audio Accelerator"
+       depends on SND && X86 && !X86_64
+       select SND_AC97_CODEC
+       help
+         Say Y here to include support for the SiS 7019 Audio Accelerator.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-sis7019.
+
 config SND_SONICVIBES
        tristate "S3 SonicVibes"
        depends on SND
@@ -548,6 +913,17 @@ config SND_VIA82XX_MODEM
          To compile this driver as a module, choose M here: the module
          will be called snd-via82xx-modem.
 
+config SND_VIRTUOSO
+       tristate "Asus Virtuoso 100/200 (Xonar)"
+       depends on SND
+       select SND_OXYGEN_LIB
+       help
+         Say Y here to include support for sound cards based on the
+         Asus AV100/AV200 chips, i.e., Xonar D2, DX and D2X.
+
+         To compile this driver as a module, choose M here: the module
+         will be called snd-virtuoso.
+
 config SND_VX222
        tristate "Digigram VX222"
        depends on SND
@@ -561,6 +937,7 @@ config SND_VX222
 config SND_YMFPCI
        tristate "Yamaha YMF724/740/744/754"
        depends on SND
+       select FW_LOADER if !SND_YMFPCI_FIRMWARE_IN_KERNEL
        select SND_OPL3_LIB
        select SND_MPU401_UART
        select SND_AC97_CODEC
@@ -571,4 +948,34 @@ config SND_YMFPCI
          To compile this driver as a module, choose M here: the module
          will be called snd-ymfpci.
 
+config SND_YMFPCI_FIRMWARE_IN_KERNEL
+       bool "In-kernel firmware for YMFPCI driver"
+       depends on SND_YMFPCI
+       default y
+       help
+         Say Y here to include the static firmware built in the kernel
+         for the YMFPCI driver.  If you choose N here, you need to
+         install the firmware files from the alsa-firmware package.
+
+config SND_AC97_POWER_SAVE
+       bool "AC97 Power-Saving Mode"
+       depends on SND_AC97_CODEC && EXPERIMENTAL
+       default n
+       help
+         Say Y here to enable the aggressive power-saving support of
+         AC97 codecs.  In this mode, the power-mode is dynamically
+         controlled at each open/close.
+
+         The mode is activated by passing power_save=1 option to
+         snd-ac97-codec driver.  You can toggle it dynamically over
+         sysfs, too.
+
+config SND_AC97_POWER_SAVE_DEFAULT
+       int "Default time-out for AC97 power-save mode"
+       depends on SND_AC97_POWER_SAVE
+       default 0
+       help
+         The default time-out value in seconds for AC97 automatic
+         power-save mode.  0 means to disable the power-save mode.
+
 endmenu