Merge tag 'pull-18-rc1-work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / sound / drivers / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config SND_MPU401_UART
3         tristate
4         select SND_RAWMIDI
5
6 config SND_OPL3_LIB
7         tristate
8         select SND_TIMER
9         select SND_HWDEP
10         select SND_SEQ_DEVICE if SND_SEQUENCER != n
11
12 config 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)
19 config 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
24 config 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
29 config SND_VX_LIB
30         tristate
31         select FW_LOADER
32         select SND_HWDEP
33         select SND_PCM
34
35 config SND_AC97_CODEC
36         tristate
37         select SND_PCM
38         select AC97_BUS
39         select SND_VMASTER
40
41 menuconfig SND_DRIVERS
42         bool "Generic sound devices"
43         default y
44         help
45           Support for generic sound devices.
46   
47 if SND_DRIVERS
48
49 config 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
79 config 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
92 config 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
112 config SND_VIRMIDI
113         tristate "Virtual MIDI soundcard"
114         depends on SND_SEQUENCER
115         select SND_TIMER
116         select SND_RAWMIDI
117         select SND_SEQ_VIRMIDI
118         select SND_SEQ_MIDI_EVENT
119         help
120           Say Y here to include the virtual MIDI driver.  This driver
121           allows to connect applications using raw MIDI devices to
122           sequencer clients.
123
124           If you don't know what MIDI is, say N here.
125
126           To compile this driver as a module, choose M here: the module
127           will be called snd-virmidi.
128
129 config SND_MTPAV
130         tristate "MOTU MidiTimePiece AV multiport MIDI"
131         select SND_RAWMIDI
132         help
133           To use a MOTU MidiTimePiece AV multiport MIDI adapter
134           connected to the parallel port, say Y here and make sure that
135           the standard parallel port driver isn't used for the port.
136
137           To compile this driver as a module, choose M here: the module
138           will be called snd-mtpav.
139
140 config SND_MTS64
141         tristate "ESI Miditerminal 4140 driver"
142         depends on PARPORT
143         select SND_RAWMIDI
144         help
145           The ESI Miditerminal 4140 is a 4 In 4 Out MIDI Interface with 
146           additional SMPTE Timecode capabilities for the parallel port.
147
148           Say 'Y' to include support for this device.
149
150           To compile this driver as a module, chose 'M' here: the module 
151           will be called snd-mts64.
152
153 config SND_SERIAL_U16550
154         tristate "UART16550 serial MIDI driver"
155         select SND_RAWMIDI
156         help
157           To include support for MIDI serial port interfaces, say Y here
158           and read <file:Documentation/sound/cards/serial-u16550.rst>.
159           This driver works with serial UARTs 16550 and better.
160
161           This driver accesses the serial port hardware directly, so
162           make sure that the standard serial driver isn't used or
163           deactivated with setserial before loading this driver.
164
165           To compile this driver as a module, choose M here: the module
166           will be called snd-serial-u16550.
167
168 config SND_SERIAL_GENERIC
169         tristate "Generic serial MIDI driver"
170         depends on SERIAL_DEV_BUS
171         depends on OF
172         select SND_RAWMIDI
173         help
174           To include support for mapping generic serial devices as raw
175           ALSA MIDI devices, say Y here. The driver only supports setting
176           the serial port to standard baudrates. To attain the standard MIDI
177           baudrate of 31.25 kBaud, configure the clock of the underlying serial
178           device so that a requested 38.4 kBaud will result in the standard speed.
179
180           Use this devicetree binding to configure serial port mapping
181           <file:Documentation/devicetree/bindings/sound/serial-midi.yaml>
182
183           To compile this driver as a module, choose M here: the module
184           will be called snd-serial-generic.
185
186 config SND_MPU401
187         tristate "Generic MPU-401 UART driver"
188         select SND_MPU401_UART
189         help
190           Say Y here to include support for MIDI ports compatible with
191           the Roland MPU-401 interface in UART mode.
192
193           To compile this driver as a module, choose M here: the module
194           will be called snd-mpu401.
195
196 config SND_PORTMAN2X4
197         tristate "Portman 2x4 driver"
198         depends on PARPORT
199         select SND_RAWMIDI
200         help
201           Say Y here to include support for Midiman Portman 2x4 parallel
202           port MIDI device.
203
204           To compile this driver as a module, choose M here: the module
205           will be called snd-portman2x4.
206
207 config SND_AC97_POWER_SAVE
208         bool "AC97 Power-Saving Mode"
209         depends on SND_AC97_CODEC
210         default n
211         help
212           Say Y here to enable the aggressive power-saving support of
213           AC97 codecs.  In this mode, the power-mode is dynamically
214           controlled at each open/close.
215
216           The mode is activated by passing 'power_save=X' to the
217           snd-ac97-codec driver module, where 'X' is the time-out
218           value, a nonnegative integer that specifies how many
219           seconds of idle time the driver must count before it may
220           put the AC97 into power-save mode;  a value of 0 (zero)
221           disables the use of this power-save mode.
222
223           After the snd-ac97-codec driver module has been loaded,
224           the 'power_save' parameter can be set via sysfs as follows:
225
226             echo 10 > /sys/module/snd_ac97_codec/parameters/power_save
227
228           In this case, the time-out is set to 10 seconds; setting
229           the time-out to 1 second (the minimum activation value)
230           isn't recommended because many applications try to reopen
231           the device frequently.  A value of 10 seconds would be a
232           good choice for normal operations.
233
234           See Documentation/sound/designs/powersave.rst for more details.
235
236 config SND_AC97_POWER_SAVE_DEFAULT
237         int "Default time-out for AC97 power-save mode"
238         depends on SND_AC97_POWER_SAVE
239         default 0
240         help
241           The default time-out value in seconds for AC97 automatic
242           power-save mode.  0 means to disable the power-save mode.
243
244           See SND_AC97_POWER_SAVE for more details.
245
246 endif   # SND_DRIVERS