diff options
author | Arnd Bergmann <arnd@arndb.de> | 2014-04-29 15:36:22 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-05-01 16:47:28 -0400 |
commit | 31ee2bfd724ab1fa2fba6472a071bca5e9132139 (patch) | |
tree | 025fbc2a7c2b25f51f59522d51904c6776158548 | |
parent | 40e3b934be0e0e04da3b56093958389d5c325c18 (diff) |
ASoC: fsl: select SND_SOC_IMX_PCM_DMA where needed
Since commit 204dec93eaa "ASoC: fsl: Allow to select individual common
options", it is possible to enable SND_SOC_FSL_SSI and SND_SOC_FSL_SPDIF
manually, either as loadable modules or built-in. This unfortunately
leads to a link error if one or both of them are built-in, while
the imx-pcm-dma framework is a loadable module:
sound/built-in.o: In function `fsl_ssi_probe':
:(.text+0x51fb8): undefined reference to `imx_pcm_dma_init'
sound/built-in.o: In function `fsl_spdif_probe':
:(.text+0x52e20): undefined reference to `imx_pcm_dma_init'
This changes Kconfig to prevent this case by using 'select' to turn
on the imx-pcm-dma code from both drivers. For consistency, we also
turn on the imx-pcm-fiq code, which is an alternative to the dma
implementation.
Note that imx-pcm-fiq is platform dependent, so we must not enable
that unless we are building a kernel for i.MX. Note also the
"if SND_IMX_SOC != n" syntax as opposed to the normal "if SND_IMX_SOC".
This is needed to avoid turning on the options as 'm' if 'SND_IMX_SOC'
is a module.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | sound/soc/fsl/Kconfig | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig index 0a118265c31e..807448ceef96 100644 --- a/sound/soc/fsl/Kconfig +++ b/sound/soc/fsl/Kconfig | |||
@@ -14,6 +14,8 @@ config SND_SOC_FSL_SAI | |||
14 | 14 | ||
15 | config SND_SOC_FSL_SSI | 15 | config SND_SOC_FSL_SSI |
16 | tristate "Synchronous Serial Interface module support" | 16 | tristate "Synchronous Serial Interface module support" |
17 | select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n | ||
18 | select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && ARCH_MXC | ||
17 | help | 19 | help |
18 | Say Y if you want to add Synchronous Serial Interface (SSI) | 20 | Say Y if you want to add Synchronous Serial Interface (SSI) |
19 | support for the Freescale CPUs. | 21 | support for the Freescale CPUs. |
@@ -23,6 +25,8 @@ config SND_SOC_FSL_SSI | |||
23 | config SND_SOC_FSL_SPDIF | 25 | config SND_SOC_FSL_SPDIF |
24 | tristate "Sony/Philips Digital Interface module support" | 26 | tristate "Sony/Philips Digital Interface module support" |
25 | select REGMAP_MMIO | 27 | select REGMAP_MMIO |
28 | select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n | ||
29 | select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && ARCH_MXC | ||
26 | help | 30 | help |
27 | Say Y if you want to add Sony/Philips Digital Interface (SPDIF) | 31 | Say Y if you want to add Sony/Philips Digital Interface (SPDIF) |
28 | support for the Freescale CPUs. | 32 | support for the Freescale CPUs. |