mirror of
https://github.com/torvalds/linux.git
synced 2024-11-14 16:12:02 +00:00
93fe4483e6
If any OSS support is enabled, regardless of built-in or module, sound_core claims full OSS major number (that is, the old 0-255 region) to trap open attempts and request sound modules using custom module aliases. This feature is redundant as chrdev already has such mechanism. This preemptive claiming prevents alternative OSS implementation. The custom module aliases are scheduled to be removed and the previous patch made soundcore emit the standard chrdev aliases too to help transition. This patch schedule the feature for removal in a year and makes it optional so that developers and distros can try new things in the meantime without rebuilding the kernel. The pre-claiming can be turned off by using SOUND_OSS_CORE_PRECLAIM and/or kernel parameter soundcore.preclaim_oss. As this allows sound minors to be individually grabbed by other users, this patch updates sound_insert_unit() such that if registering individual device region fails, it tries the next available slot. For details on removal plan, please read the entry added by this patch in feature-removal-schedule.txt . Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
140 lines
3.8 KiB
Plaintext
140 lines
3.8 KiB
Plaintext
# sound/Config.in
|
|
#
|
|
|
|
menuconfig SOUND
|
|
tristate "Sound card support"
|
|
depends on HAS_IOMEM
|
|
help
|
|
If you have a sound card in your computer, i.e. if it can say more
|
|
than an occasional beep, say Y. Be sure to have all the information
|
|
about your sound card and its configuration down (I/O port,
|
|
interrupt and DMA channel), because you will be asked for it.
|
|
|
|
You want to read the Sound-HOWTO, available from
|
|
<http://www.tldp.org/docs.html#howto>. General information about
|
|
the modular sound system is contained in the files
|
|
<file:Documentation/sound/oss/Introduction>. The file
|
|
<file:Documentation/sound/oss/README.OSS> contains some slightly
|
|
outdated but still useful information as well. Newer sound
|
|
driver documentation is found in <file:Documentation/sound/alsa/*>.
|
|
|
|
If you have a PnP sound card and you want to configure it at boot
|
|
time using the ISA PnP tools (read
|
|
<http://www.roestock.demon.co.uk/isapnptools/>), then you need to
|
|
compile the sound card support as a module and load that module
|
|
after the PnP configuration is finished. To do this, choose M here
|
|
and read <file:Documentation/sound/oss/README.modules>; the module
|
|
will be called soundcore.
|
|
|
|
if SOUND
|
|
|
|
config SOUND_OSS_CORE
|
|
bool
|
|
default n
|
|
|
|
config SOUND_OSS_CORE_PRECLAIM
|
|
bool "Preclaim OSS device numbers"
|
|
depends on SOUND_OSS_CORE
|
|
default y
|
|
help
|
|
With this option enabled, the kernel will claim all OSS device
|
|
numbers if any OSS support (native or emulation) is enabled
|
|
whether the respective module is loaded or not and try to load the
|
|
appropriate module using sound-slot/service-* and char-major-*
|
|
module aliases when one of the device numbers is opened. With
|
|
this option disabled, kernel will only claim actually in-use
|
|
device numbers and opening a missing device will generate only the
|
|
standard char-major-* aliases.
|
|
|
|
The only visible difference is use of additional module aliases
|
|
and whether OSS sound devices appear multiple times in
|
|
/proc/devices. sound-slot/service-* module aliases are scheduled
|
|
to be removed (ie. PRECLAIM won't be available) and this option is
|
|
to make the transition easier. This option can be overridden
|
|
during boot using the kernel parameter soundcore.preclaim_oss.
|
|
|
|
Disabling this allows alternative OSS implementations.
|
|
|
|
Please read Documentation/feature-removal-schedule.txt for
|
|
details.
|
|
|
|
If unusre, say Y.
|
|
|
|
source "sound/oss/dmasound/Kconfig"
|
|
|
|
if !M68K
|
|
|
|
menuconfig SND
|
|
tristate "Advanced Linux Sound Architecture"
|
|
help
|
|
Say 'Y' or 'M' to enable ALSA (Advanced Linux Sound Architecture),
|
|
the new base sound system.
|
|
|
|
For more information, see <http://www.alsa-project.org/>
|
|
|
|
if SND
|
|
|
|
source "sound/core/Kconfig"
|
|
|
|
source "sound/drivers/Kconfig"
|
|
|
|
source "sound/isa/Kconfig"
|
|
|
|
source "sound/pci/Kconfig"
|
|
|
|
source "sound/ppc/Kconfig"
|
|
|
|
source "sound/aoa/Kconfig"
|
|
|
|
source "sound/arm/Kconfig"
|
|
|
|
source "sound/atmel/Kconfig"
|
|
|
|
source "sound/spi/Kconfig"
|
|
|
|
source "sound/mips/Kconfig"
|
|
|
|
source "sound/sh/Kconfig"
|
|
|
|
# the following will depend on the order of config.
|
|
# here assuming USB is defined before ALSA
|
|
source "sound/usb/Kconfig"
|
|
|
|
# the following will depend on the order of config.
|
|
# here assuming PCMCIA is defined before ALSA
|
|
source "sound/pcmcia/Kconfig"
|
|
|
|
source "sound/sparc/Kconfig"
|
|
|
|
source "sound/parisc/Kconfig"
|
|
|
|
source "sound/soc/Kconfig"
|
|
|
|
endif # SND
|
|
|
|
menuconfig SOUND_PRIME
|
|
tristate "Open Sound System (DEPRECATED)"
|
|
select SOUND_OSS_CORE
|
|
help
|
|
Say 'Y' or 'M' to enable Open Sound System drivers.
|
|
|
|
if SOUND_PRIME
|
|
|
|
source "sound/oss/Kconfig"
|
|
|
|
endif # SOUND_PRIME
|
|
|
|
endif # !M68K
|
|
|
|
endif # SOUND
|
|
|
|
# AC97_BUS is used from both sound and ucb1400
|
|
config AC97_BUS
|
|
tristate
|
|
help
|
|
This is used to avoid config and link hard dependencies between the
|
|
sound subsystem and other function drivers completely unrelated to
|
|
sound although they're sharing the AC97 bus. Concerned drivers
|
|
should "select" this.
|
|
|