1# SPDX-License-Identifier: GPL-2.0-only 2config SND_MPU401_UART 3 tristate 4 select SND_RAWMIDI 5 6config SND_OPL3_LIB 7 tristate 8 select SND_TIMER 9 select SND_HWDEP 10 select SND_SEQ_DEVICE if SND_SEQUENCER != n 11 12config SND_OPL4_LIB 13 tristate 14 select SND_TIMER 15 select SND_HWDEP 16 select SND_SEQ_DEVICE if SND_SEQUENCER != n 17 18# select SEQ stuff to min(SND_SEQUENCER,SND_XXX) 19config SND_OPL3_LIB_SEQ 20 def_tristate SND_SEQUENCER && SND_OPL3_LIB 21 select SND_SEQ_MIDI_EMUL 22 select SND_SEQ_MIDI_EVENT 23 24config SND_OPL4_LIB_SEQ 25 def_tristate SND_SEQUENCER && SND_OPL4_LIB 26 select SND_SEQ_MIDI_EMUL 27 select SND_SEQ_MIDI_EVENT 28 29config SND_VX_LIB 30 tristate 31 select FW_LOADER 32 select SND_HWDEP 33 select SND_PCM 34 35config SND_AC97_CODEC 36 tristate 37 select SND_PCM 38 select AC97_BUS 39 select SND_VMASTER 40 41menuconfig SND_DRIVERS 42 bool "Generic sound devices" 43 default y 44 help 45 Support for generic sound devices. 46 47if SND_DRIVERS 48 49config SND_PCSP 50 tristate "PC-Speaker support (READ HELP!)" 51 depends on PCSPKR_PLATFORM && X86 && HIGH_RES_TIMERS 52 depends on INPUT 53 select SND_PCM 54 help 55 If you don't have a sound card in your computer, you can include a 56 driver for the PC speaker which allows it to act like a primitive 57 sound card. 58 This driver also replaces the pcspkr driver for beeps. 59 60 You can compile this as a module which will be called snd-pcsp. 61 62 WARNING: if you already have a soundcard, enabling this 63 driver may lead to a problem. Namely, it may get loaded 64 before the other sound driver of yours, making the 65 pc-speaker a default sound device. Which is likely not 66 what you want. To make this driver play nicely with other 67 sound driver, you can add this in a configuration file under 68 /etc/modprobe.d/ directory: 69 options snd-pcsp index=2 70 71 You don't need this driver if you only want your pc-speaker to beep. 72 You don't need this driver if you have a tablet piezo beeper 73 in your PC instead of the real speaker. 74 75 Say N if you have a sound card. 76 Say M if you don't. 77 Say Y only if you really know what you do. 78 79config SND_DUMMY 80 tristate "Dummy (/dev/null) soundcard" 81 select SND_PCM 82 help 83 Say Y here to include the dummy driver. This driver does 84 nothing, but emulates various mixer controls and PCM devices. 85 86 You don't need this unless you're testing the hardware support 87 of programs using the ALSA API. 88 89 To compile this driver as a module, choose M here: the module 90 will be called snd-dummy. 91 92config SND_ALOOP 93 tristate "Generic loopback driver (PCM)" 94 select SND_PCM 95 select SND_TIMER 96 help 97 Say 'Y' or 'M' to include support for the PCM loopback device. 98 This module returns played samples back to the user space using 99 the standard ALSA PCM device. The devices are routed 0->1 and 100 1->0, where first number is the playback PCM device and second 101 number is the capture device. Module creates two PCM devices and 102 configured number of substreams (see the pcm_substreams module 103 parameter). 104 105 The loopback device allows time synchronization with an external 106 timing source using the time shift universal control (+-20% 107 of system time). 108 109 To compile this driver as a module, choose M here: the module 110 will be called snd-aloop. 111 112config SND_PCMTEST 113 tristate "Virtual PCM test driver" 114 select SND_PCM 115 help 116 Say 'Y' or 'M' to include support for the Virtual PCM test driver. 117 This driver is aimed at extended testing of the userspace applications 118 which use the ALSA API, as well as the PCM middle layer testing. 119 120 It can generate random or pattern-based data into the capture stream, 121 check the playback stream for containing the selected pattern, inject 122 time delays during capture/playback, redefine the RESET ioctl operation 123 to perform the PCM middle layer testing and inject errors during the 124 PCM callbacks. It supports both interleaved and non-interleaved access 125 modes. You can find the corresponding selftest in the 'alsa' 126 selftests folder. 127 128config SND_VIRMIDI 129 tristate "Virtual MIDI soundcard" 130 depends on SND_SEQUENCER 131 select SND_TIMER 132 select SND_RAWMIDI 133 select SND_SEQ_VIRMIDI 134 select SND_SEQ_MIDI_EVENT 135 help 136 Say Y here to include the virtual MIDI driver. This driver 137 allows to connect applications using raw MIDI devices to 138 sequencer clients. 139 140 If you don't know what MIDI is, say N here. 141 142 To compile this driver as a module, choose M here: the module 143 will be called snd-virmidi. 144 145config SND_MTPAV 146 tristate "MOTU MidiTimePiece AV multiport MIDI" 147 depends on HAS_IOPORT 148 select SND_RAWMIDI 149 help 150 To use a MOTU MidiTimePiece AV multiport MIDI adapter 151 connected to the parallel port, say Y here and make sure that 152 the standard parallel port driver isn't used for the port. 153 154 To compile this driver as a module, choose M here: the module 155 will be called snd-mtpav. 156 157config SND_MTS64 158 tristate "ESI Miditerminal 4140 driver" 159 depends on PARPORT 160 select SND_RAWMIDI 161 help 162 The ESI Miditerminal 4140 is a 4 In 4 Out MIDI Interface with 163 additional SMPTE Timecode capabilities for the parallel port. 164 165 Say 'Y' to include support for this device. 166 167 To compile this driver as a module, chose 'M' here: the module 168 will be called snd-mts64. 169 170config SND_SERIAL_U16550 171 tristate "UART16550 serial MIDI driver" 172 depends on HAS_IOPORT 173 select SND_RAWMIDI 174 help 175 To include support for MIDI serial port interfaces, say Y here 176 and read <file:Documentation/sound/cards/serial-u16550.rst>. 177 This driver works with serial UARTs 16550 and better. 178 179 This driver accesses the serial port hardware directly, so 180 make sure that the standard serial driver isn't used or 181 deactivated with setserial before loading this driver. 182 183 To compile this driver as a module, choose M here: the module 184 will be called snd-serial-u16550. 185 186config SND_SERIAL_GENERIC 187 tristate "Generic serial MIDI driver" 188 depends on SERIAL_DEV_BUS 189 depends on OF 190 select SND_RAWMIDI 191 help 192 To include support for mapping generic serial devices as raw 193 ALSA MIDI devices, say Y here. The driver only supports setting 194 the serial port to standard baudrates. To attain the standard MIDI 195 baudrate of 31.25 kBaud, configure the clock of the underlying serial 196 device so that a requested 38.4 kBaud will result in the standard speed. 197 198 Use this devicetree binding to configure serial port mapping 199 <file:Documentation/devicetree/bindings/sound/serial-midi.yaml> 200 201 To compile this driver as a module, choose M here: the module 202 will be called snd-serial-generic. 203 204config SND_MPU401 205 tristate "Generic MPU-401 UART driver" 206 depends on HAS_IOPORT 207 select SND_MPU401_UART 208 help 209 Say Y here to include support for MIDI ports compatible with 210 the Roland MPU-401 interface in UART mode. 211 212 To compile this driver as a module, choose M here: the module 213 will be called snd-mpu401. 214 215config SND_PORTMAN2X4 216 tristate "Portman 2x4 driver" 217 depends on PARPORT 218 select SND_RAWMIDI 219 help 220 Say Y here to include support for Midiman Portman 2x4 parallel 221 port MIDI device. 222 223 To compile this driver as a module, choose M here: the module 224 will be called snd-portman2x4. 225 226config SND_AC97_POWER_SAVE 227 bool "AC97 Power-Saving Mode" 228 depends on SND_AC97_CODEC 229 default n 230 help 231 Say Y here to enable the aggressive power-saving support of 232 AC97 codecs. In this mode, the power-mode is dynamically 233 controlled at each open/close. 234 235 The mode is activated by passing 'power_save=X' to the 236 snd-ac97-codec driver module, where 'X' is the time-out 237 value, a nonnegative integer that specifies how many 238 seconds of idle time the driver must count before it may 239 put the AC97 into power-save mode; a value of 0 (zero) 240 disables the use of this power-save mode. 241 242 After the snd-ac97-codec driver module has been loaded, 243 the 'power_save' parameter can be set via sysfs as follows: 244 245 echo 10 > /sys/module/snd_ac97_codec/parameters/power_save 246 247 In this case, the time-out is set to 10 seconds; setting 248 the time-out to 1 second (the minimum activation value) 249 isn't recommended because many applications try to reopen 250 the device frequently. A value of 10 seconds would be a 251 good choice for normal operations. 252 253 See Documentation/sound/designs/powersave.rst for more details. 254 255config SND_AC97_POWER_SAVE_DEFAULT 256 int "Default time-out for AC97 power-save mode" 257 depends on SND_AC97_POWER_SAVE 258 default 0 259 help 260 The default time-out value in seconds for AC97 automatic 261 power-save mode. 0 means to disable the power-save mode. 262 263 See SND_AC97_POWER_SAVE for more details. 264 265endif # SND_DRIVERS 266