diff --git a/arm-imx-fixsound.patch b/arm-imx-fixsound.patch new file mode 100644 index 000000000..cfad652e4 --- /dev/null +++ b/arm-imx-fixsound.patch @@ -0,0 +1,65 @@ +From 3f1a91aa25579ba5e7268a47a73d2a83e4802c62 Mon Sep 17 00:00:00 2001 +From: Fabio Estevam +Date: Mon, 29 Jul 2013 21:37:32 +0000 +Subject: ASoC: fsl: Fix module build + +Building imx_v6_v7_defconfig with all audio drivers as modules results in +the folowing build error: + +ERROR: "imx_pcm_fiq_init" [sound/soc/fsl/snd-soc-imx-ssi.ko] undefined! +ERROR: "imx_pcm_dma_init" [sound/soc/fsl/snd-soc-imx-ssi.ko] undefined! +ERROR: "imx_pcm_fiq_exit" [sound/soc/fsl/snd-soc-imx-ssi.ko] undefined! +ERROR: "imx_pcm_dma_exit" [sound/soc/fsl/snd-soc-imx-ssi.ko] undefined! +ERROR: "imx_pcm_dma_init" [sound/soc/fsl/snd-soc-fsl-ssi.ko] undefined! +ERROR: "imx_pcm_dma_exit" [sound/soc/fsl/snd-soc-fsl-ssi.ko] undefined! + +Fix this by allowing SND_SOC_IMX_PCM_FIQ and SND_SOC_IMX_PCM_DMA to be also +built as modules and by using 'IS_ENABLED' to cover the module case. + +Reported-by: Guennadi Liakhovetski +Signed-off-by: Fabio Estevam +Acked-by: Shawn Guo +Signed-off-by: Mark Brown +--- +diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig +index 3a79d01..c26449b 100644 +--- a/sound/soc/fsl/Kconfig ++++ b/sound/soc/fsl/Kconfig +@@ -109,11 +109,11 @@ config SND_SOC_IMX_SSI + tristate + + config SND_SOC_IMX_PCM_FIQ +- bool ++ tristate + select FIQ + + config SND_SOC_IMX_PCM_DMA +- bool ++ tristate + select SND_SOC_GENERIC_DMAENGINE_PCM + + config SND_SOC_IMX_AUDMUX +diff --git a/sound/soc/fsl/imx-pcm.h b/sound/soc/fsl/imx-pcm.h +index 9136625..5d5b733 100644 +--- a/sound/soc/fsl/imx-pcm.h ++++ b/sound/soc/fsl/imx-pcm.h +@@ -32,7 +32,7 @@ + dma_data->peripheral_type = IMX_DMATYPE_SSI; + } + +-#ifdef CONFIG_SND_SOC_IMX_PCM_DMA ++#if IS_ENABLED(CONFIG_SND_SOC_IMX_PCM_DMA) + int imx_pcm_dma_init(struct platform_device *pdev); + void imx_pcm_dma_exit(struct platform_device *pdev); + #else +@@ -46,7 +46,7 @@ + } + #endif + +-#ifdef CONFIG_SND_SOC_IMX_PCM_FIQ ++#if IS_ENABLED(CONFIG_SND_SOC_IMX_PCM_FIQ) + int imx_pcm_fiq_init(struct platform_device *pdev); + void imx_pcm_fiq_exit(struct platform_device *pdev); + #else +-- +cgit v0.9.2 diff --git a/config-arm-generic b/config-arm-generic index 8b7a567ac..79716bdfa 100644 --- a/config-arm-generic +++ b/config-arm-generic @@ -17,6 +17,7 @@ CONFIG_ARM_SP805_WATCHDOG=m CONFIG_ARM_ARCH_TIMER=y # CONFIG_ARM_DT_BL_CPUFREQ is not set CONFIG_NR_CPUS=8 +CONFIG_ARM_DMA_USE_IOMMU=y # ARM AMBA generic HW CONFIG_ARM_AMBA=y diff --git a/config-armv7 b/config-armv7 index b1aae7b86..1b2c1127b 100644 --- a/config-armv7 +++ b/config-armv7 @@ -117,8 +117,10 @@ CONFIG_OMAP_MBOX_FWK=m CONFIG_OMAP_MBOX_KFIFO_SIZE=256 CONFIG_OMAP_DM_TIMER=y CONFIG_OMAP_PM_NOOP=y +CONFIG_DMA_OMAP=y CONFIG_OMAP_IOMMU=y CONFIG_OMAP_IOVMM=m +CONFIG_HWSPINLOCK_OMAP=m CONFIG_OMAP3_EMU=y # CONFIG_OMAP3_SDRC_AC_TIMING is not set CONFIG_ARM_OMAP2PLUS_CPUFREQ=y @@ -183,10 +185,6 @@ CONFIG_RTC_DRV_MAX8907=m # CONFIG_RTC_DRV_TWL92330 is not set CONFIG_RTC_DRV_TWL4030=y CONFIG_RTC_DRV_OMAP=y -# Note needs to be compiled in until we build MMC modular -CONFIG_DMA_OMAP=y -CONFIG_OMAP_IOVMM=m -CONFIG_HWSPINLOCK_OMAP=m CONFIG_SENSORS_TWL4030_MADC=m CONFIG_WL_TI=y @@ -369,14 +367,23 @@ CONFIG_SERIAL_IMX=y CONFIG_SERIAL_IMX_CONSOLE=y CONFIG_I2C_IMX=m CONFIG_SPI_IMX=m +CONFIG_MFD_MC13783=m +CONFIG_MFD_MC13XXX_SPI=m CONFIG_W1_MASTER_MXC=m CONFIG_IMX_WEIM=y CONFIG_IMX2_WDT=m CONFIG_CRYPTO_DEV_SAHARA=m # CONFIG_FB_MX3 is not set CONFIG_SND_IMX_SOC=m -# CONFIG_SND_SOC_IMX_SGTL5000 is not set -# CONFIG_SND_SOC_IMX_WM8962 is not set +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_FSL_UTILS=m +CONFIG_SND_SOC_IMX_SSI=m +CONFIG_SND_SOC_IMX_AUDMUX=m +CONFIG_SND_SOC_IMX_PCM_FIQ=m +CONFIG_SND_SOC_IMX_PCM_DMA=m +CONFIG_SND_SOC_IMX_SGTL5000=m +CONFIG_SND_SOC_IMX_WM8962=m +CONFIG_SND_SOC_IMX_MC13783=m CONFIG_USB_EHCI_MXC=m CONFIG_USB_IMX21_HCD=m CONFIG_USB_MXS_PHY=m @@ -401,6 +408,11 @@ CONFIG_DRM_IMX_IPUV3=m CONFIG_DRM_IMX_PARALLEL_DISPLAY=m CONFIG_DRM_IMX_TVE=m CONFIG_VIDEO_CODA=m +CONFIG_SENSORS_MC13783_ADC=m +CONFIG_REGULATOR_MC13783=m +CONFIG_REGULATOR_MC13892=m +CONFIG_LEDS_MC13783=m +CONFIG_RTC_DRV_MC13XXX=m CONFIG_INPUT_PWM_BEEPER=m CONFIG_INPUT_88PM80X_ONKEY=m diff --git a/config-armv7-lpae b/config-armv7-lpae index c9b2b2b60..c4febfc94 100644 --- a/config-armv7-lpae +++ b/config-armv7-lpae @@ -73,8 +73,10 @@ CONFIG_PCI_EXYNOS=y CONFIG_ARM_CCI=y CONFIG_TCG_TIS_I2C_INFINEON=m + CONFIG_PINCTRL_EXYNOS=y CONFIG_PINCTRL_EXYNOS5440=y +CONFIG_EXYNOS_IOMMU=y CONFIG_VIDEO_SAMSUNG_S5P_G2D=m CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m CONFIG_VIDEO_SAMSUNG_S5P_MFC=m diff --git a/kernel.spec b/kernel.spec index 4c5cb5b08..9e7a76b1f 100644 --- a/kernel.spec +++ b/kernel.spec @@ -705,6 +705,8 @@ Patch21020: arm-tegra-usb-no-reset-linux33.patch # ARM wandboard Patch21030: arm-wandboard-quad.patch +# https://git.kernel.org/cgit/linux/kernel/git/broonie/sound.git/patch/?id=3f1a91aa25579ba5e7268a47a73d2a83e4802c62 +Patch21031: arm-imx-fixsound.patch # AM33xx Patch21040: arm-omap-bbb-dts.patch @@ -1308,6 +1310,7 @@ ApplyPatch arm-exynos-mp.patch ApplyPatch arm-omap-load-tfp410.patch ApplyPatch arm-tegra-usb-no-reset-linux33.patch ApplyPatch arm-wandboard-quad.patch +ApplyPatch arm-imx-fixsound.patch #ApplyPatch arm-omap-bbb-dts.patch # # bugfixes to drivers and filesystems @@ -2247,6 +2250,11 @@ fi # ||----w | # || || %changelog +* Fri Aug 23 2013 Peter Robinson +- Minor ARM config cleanups +- Enable some IOMMU drivers on ARM +- Enable some i.MX sound drivers + * Thu Aug 22 2013 Josh Boyer - 3.11.0-0.rc6.git2.1 - Linux v3.11-rc6-72-g1f8b766