X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=package%2Fkernel%2Fmodules%2Fsound.mk;h=f80fa36c01e39d559c8b08805f6863da6c5cd9ba;hb=edba86d7d2cd642a213ba55212f55036c743a0d6;hp=547fddc8305fab3bfc86b42736081a655577d51b;hpb=eda158fc7b8192a1bead181561169ff245c0e04c;p=openwrt.git diff --git a/package/kernel/modules/sound.mk b/package/kernel/modules/sound.mk index 547fddc830..f80fa36c01 100644 --- a/package/kernel/modules/sound.mk +++ b/package/kernel/modules/sound.mk @@ -1,17 +1,41 @@ # -# Copyright (C) 2006-2008 OpenWrt.org +# Copyright (C) 2006-2012 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # -# $Id$ SOUND_MENU:=Sound Support +# allow targets to override the soundcore stuff +SOUNDCORE_LOAD ?= \ + soundcore \ + snd \ + snd-page-alloc \ + snd-hwdep \ + snd-seq-device \ + snd-rawmidi \ + snd-timer \ + snd-pcm \ + snd-mixer-oss \ + snd-pcm-oss + +SOUNDCORE_FILES ?= \ + $(LINUX_DIR)/sound/soundcore.ko \ + $(LINUX_DIR)/sound/core/snd.ko \ + $(LINUX_DIR)/sound/core/snd-page-alloc.ko \ + $(LINUX_DIR)/sound/core/snd-hwdep.ko \ + $(LINUX_DIR)/sound/core/seq/snd-seq-device.ko \ + $(LINUX_DIR)/sound/core/snd-rawmidi.ko \ + $(LINUX_DIR)/sound/core/snd-timer.ko \ + $(LINUX_DIR)/sound/core/snd-pcm.ko \ + $(LINUX_DIR)/sound/core/oss/snd-mixer-oss.ko \ + $(LINUX_DIR)/sound/core/oss/snd-pcm-oss.ko + define KernelPackage/sound-core SUBMENU:=$(SOUND_MENU) TITLE:=Sound support - DEPENDS:=@PCI_SUPPORT||USB_SUPPORT + DEPENDS:=@AUDIO_SUPPORT KCONFIG:= \ CONFIG_SOUND \ CONFIG_SND \ @@ -23,60 +47,76 @@ define KernelPackage/sound-core CONFIG_SND_VIRMIDI \ CONFIG_SND_SEQ_DUMMY \ CONFIG_SND_SEQUENCER_OSS=y \ - CONFIG_HOSTAUDIO + CONFIG_HOSTAUDIO \ + CONFIG_SND_PCM_OSS \ + CONFIG_SND_MIXER_OSS \ + CONFIG_SOUND_OSS_CORE_PRECLAIM=y + FILES:=$(SOUNDCORE_FILES) + AUTOLOAD:=$(call AutoLoad,30,$(SOUNDCORE_LOAD)) + $(call AddDepends/input) +endef + +define KernelPackage/sound-core/uml + FILES:= \ + $(LINUX_DIR)/sound/soundcore.ko \ + $(LINUX_DIR)/arch/um/drivers/hostaudio.ko + AUTOLOAD:=$(call AutoLoad,30,soundcore hostaudio) endef -define KernelPackage/sound-core/2.4 - FILES:=$(LINUX_DIR)/drivers/sound/soundcore.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,30,soundcore) +define KernelPackage/sound-core/description + Kernel modules for sound support endef -define KernelPackage/sound-core/2.6 +$(eval $(call KernelPackage,sound-core)) + + +define AddDepends/sound + SUBMENU:=$(SOUND_MENU) + DEPENDS+=kmod-sound-core $(1) @!TARGET_uml +endef + + +define KernelPackage/ac97 + TITLE:=ac97 controller + KCONFIG:=CONFIG_SND_AC97_CODEC FILES:= \ - $(LINUX_DIR)/sound/soundcore.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd-page-alloc.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd-hwdep.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/seq/snd-seq-device.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd-rawmidi.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd-timer.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/core/snd-pcm.$(LINUX_KMOD_SUFFIX) \ - $(if $(CONFIG_SND_MIXER_OSS),$(LINUX_DIR)/sound/core/oss/snd-mixer-oss.$(LINUX_KMOD_SUFFIX)) \ - $(if $(CONFIG_SND_PCM_OSS),$(LINUX_DIR)/sound/core/oss/snd-pcm-oss.$(LINUX_KMOD_SUFFIX)) - AUTOLOAD:=$(call AutoLoad,30, \ - soundcore \ - snd \ - snd-page-alloc \ - snd-hwdep \ - snd-seq-device \ - snd-rawmidi \ - snd-timer \ - snd-pcm \ - $(if $(CONFIG_SND_MIXER_OSS),snd-mixer-oss) \ - $(if $(CONFIG_SND_PCM_OSS),snd-pcm-oss) \ - ) + $(LINUX_DIR)/sound/ac97_bus.ko \ + $(LINUX_DIR)/sound/pci/ac97/snd-ac97-codec.ko + AUTOLOAD:=$(call AutoLoad,35,ac97_bus snd-ac97-codec) + $(call AddDepends/sound) +endef + +define KernelPackage/ac97/description + The ac97 controller endef -define KernelPackage/sound-core/uml-2.6 +$(eval $(call KernelPackage,ac97)) + + +define KernelPackage/sound-seq + TITLE:=Sequencer support FILES:= \ - $(LINUX_DIR)/sound/soundcore.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/arch/um/drivers/hostaudio.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,30,soundcore hostaudio) + $(LINUX_DIR)/sound/core/seq/snd-seq.ko \ + $(LINUX_DIR)/sound/core/seq/snd-seq-midi-event.ko \ + $(LINUX_DIR)/sound/core/seq/snd-seq-midi.ko + AUTOLOAD:=$(call AutoLoad,35,snd-seq snd-seq-midi-event snd-seq-midi) + $(call AddDepends/sound) endef -define KernelPackage/sound-core/description - Kernel modules for sound support +define KernelPackage/sound-seq/description + Kernel modules for sequencer support endef -$(eval $(call KernelPackage,sound-core)) +$(eval $(call KernelPackage,sound-seq)) + define KernelPackage/sound-i8x0 - SUBMENU:=$(SOUND_MENU) TITLE:=Intel/SiS/nVidia/AMD/ALi AC97 Controller - DEPENDS:=kmod-sound-core + DEPENDS:=+kmod-ac97 KCONFIG:=CONFIG_SND_INTEL8X0 - FILES:=$(LINUX_DIR)/sound/pci/snd-intel8x0.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,35,snd-i8x0) + FILES:=$(LINUX_DIR)/sound/pci/snd-intel8x0.ko + AUTOLOAD:=$(call AutoLoad,36,snd-intel8x0) + $(call AddDepends/sound) endef define KernelPackage/sound-i8x0/description @@ -87,15 +127,14 @@ endef $(eval $(call KernelPackage,sound-i8x0)) + define KernelPackage/sound-cs5535audio - SUBMENU:=$(SOUND_MENU) TITLE:=CS5535 PCI Controller - DEPENDS:=kmod-sound-core + DEPENDS:=+kmod-ac97 KCONFIG:=CONFIG_SND_CS5535AUDIO - FILES:=$(LINUX_DIR)/sound/pci/cs5535audio/snd-cs5535audio.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/ac97_bus.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/sound/pci/ac97/snd-ac97-codec.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,35, ac97_bus snd-ac97-codec snd-cs5535audio) + FILES:=$(LINUX_DIR)/sound/pci/cs5535audio/snd-cs5535audio.ko + AUTOLOAD:=$(call AutoLoad,36,snd-cs5535audio) + $(call AddDepends/sound) endef define KernelPackage/sound-cs5535audio/description @@ -103,3 +142,70 @@ define KernelPackage/sound-cs5535audio/description endef $(eval $(call KernelPackage,sound-cs5535audio)) + + +define KernelPackage/sound-soc-core + TITLE:=SoC sound support + DEPENDS:=+kmod-regmap + KCONFIG:= \ + CONFIG_SND_SOC \ + CONFIG_SND_SOC_DMAENGINE_PCM=y \ + CONFIG_SND_SOC_ALL_CODECS=n + FILES:=$(LINUX_DIR)/sound/soc/snd-soc-core.ko + AUTOLOAD:=$(call AutoLoad,55, snd-soc-core) + $(call AddDepends/sound) +endef + +$(eval $(call KernelPackage,sound-soc-core)) + + +define KernelPackage/sound-soc-ac97 + TITLE:=AC97 Codec support + KCONFIG:=CONFIG_SND_SOC_AC97_CODEC + FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-ac97.ko + AUTOLOAD:=$(call AutoLoad,57,snd-soc-ac97) + DEPENDS:=+kmod-ac97 +kmod-sound-soc-core + $(call AddDepends/sound) +endef + +$(eval $(call KernelPackage,sound-soc-ac97)) + + +define KernelPackage/sound-soc-gw_avila + TITLE:=Gateworks Avila SoC sound support + KCONFIG:= \ + CONFIG_SND_GW_AVILA_SOC \ + CONFIG_SND_GW_AVILA_SOC_PCM \ + CONFIG_SND_GW_AVILA_SOC_HSS + FILES:= \ + $(LINUX_DIR)/sound/soc/codecs/snd-soc-tlv320aic3x.ko \ + $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila.ko \ + $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-pcm.ko \ + $(LINUX_DIR)/sound/soc/gw-avila/snd-soc-gw-avila-hss.ko + AUTOLOAD:=$(call AutoLoad,65,snd-soc-tlv320aic3x snd-soc-gw-avila snd-soc-gw-avila-pcm snd-soc-gw-avila-hss) + DEPENDS:=@TARGET_ixp4xx +kmod-sound-soc-core + $(call AddDepends/sound) +endef + +$(eval $(call KernelPackage,sound-soc-gw_avila)) + + +define KernelPackage/pcspkr + DEPENDS:=@!TARGET_x86 + TITLE:=PC speaker support + KCONFIG:= \ + CONFIG_INPUT_PCSPKR \ + CONFIG_SND_PCSP + FILES:= \ + $(LINUX_DIR)/drivers/input/misc/pcspkr.ko \ + $(LINUX_DIR)/sound/drivers/pcsp/snd-pcsp.ko + AUTOLOAD:=$(call AutoLoad,50,pcspkr snd-pcsp) + $(call AddDepends/input) + $(call AddDepends/sound) +endef + +define KernelPackage/pcspkr/description + This enables sounds (tones) through the pc speaker +endef + +$(eval $(call KernelPackage,pcspkr))