kernel: add references to openwrt alternative button handling
[openwrt.git] / package / kernel / linux / modules / sound.mk
index 28b9890..be01638 100644 (file)
@@ -11,7 +11,6 @@ SOUND_MENU:=Sound Support
 SOUNDCORE_LOAD ?= \
        soundcore \
        snd \
-       snd-page-alloc \
        snd-hwdep \
        snd-seq-device \
        snd-rawmidi \
@@ -23,7 +22,6 @@ SOUNDCORE_LOAD ?= \
 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 \
@@ -40,6 +38,22 @@ SOUNDCORE_FILES += \
        $(LINUX_DIR)/sound/core/snd-compress.ko
 endif
 
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.12.0)),1)
+SOUNDCORE_LOAD += \
+       $(if $(CONFIG_SND_DMAENGINE_PCM),snd-pcm-dmaengine)
+
+SOUNDCORE_FILES += \
+       $(if $(CONFIG_SND_DMAENGINE_PCM),$(LINUX_DIR)/sound/core/snd-pcm-dmaengine.ko)
+endif
+
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.14.0)),1)
+SOUNDCORE_LOAD += \
+       snd-page-alloc
+
+SOUNDCORE_FILES += \
+       $(LINUX_DIR)/sound/core/snd-page-alloc.ko
+endif
+
 define KernelPackage/sound-core
   SUBMENU:=$(SOUND_MENU)
   TITLE:=Sound support
@@ -182,6 +196,7 @@ $(eval $(call KernelPackage,sound-soc-ac97))
 
 define KernelPackage/sound-soc-imx
   TITLE:=IMX SoC support
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.12.0)),1)
   KCONFIG:=\
        CONFIG_SND_IMX_SOC \
        CONFIG_SND_SOC_IMX_AUDMUX \
@@ -192,6 +207,18 @@ define KernelPackage/sound-soc-imx
        $(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
        $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-pcm.ko
   AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
+else
+  KCONFIG:=\
+       CONFIG_SND_IMX_SOC \
+       CONFIG_SND_SOC_IMX_AUDMUX \
+       CONFIG_SND_SOC_FSL_SSI \
+       CONFIG_SND_SOC_IMX_PCM_DMA
+  FILES:= \
+       $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-audmux.ko \
+       $(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
+       $(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
+  AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
+endif
   DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
   $(call AddDepends/sound)
 endef
@@ -241,7 +268,7 @@ $(eval $(call KernelPackage,sound-soc-gw_avila))
 
 
 define KernelPackage/pcspkr
-  DEPENDS:=@!TARGET_x86
+  DEPENDS:=@TARGET_x86
   TITLE:=PC speaker support
   KCONFIG:= \
        CONFIG_INPUT_PCSPKR \