kernel: module updates for 3.12
[openwrt.git] / package / kernel / linux / modules / sound.mk
index 28b9890..777d274 100644 (file)
@@ -40,6 +40,14 @@ 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
+
 define KernelPackage/sound-core
   SUBMENU:=$(SOUND_MENU)
   TITLE:=Sound support
@@ -182,6 +190,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 +201,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