android_kernel_oneplus_msm8998/sound/soc
Lothar Waßmann f2818d07af ASoC: fsl: fix miscompilation of snd-soc-imx-pcm
Hi Mark,

thanks your insisting on a better description for the patch, I found a
more appropriate solution for the problem:

Compiling the SoC Audio driver for Freescale i.MX as a module
(CONFIG_SND_SOC_IMX_PCM=m) results in a non-functional sound driver
indicated by the error message:
| imx-sgtl5000 sound.1: platform imx-pcm-audio not registered
| imx-sgtl5000 sound.1: snd_soc_register_card failed (-517)
| platform sound.1: Driver imx-sgtl5000 requests probe deferral
instead of the message:
| imx-sgtl5000 sound.1:  sgtl5000 <-> 63fcc000.ssi mapping ok
that is to be expected upon loading the snd-soc-imx-pcm.ko module.

The build log reveals, that the file imx-pcm-dma.o (or imx-pcm-fiq.o
depending on the kernel configuration), which should be linked
together with imx-pcm.o into snd-imx-pcm.ko, is not being compiled in
this case.

The make rules for these files shows that the target object imx-pcm.o
is assigned to the variable snd-soc-imx-pcm-y while
imx-pcm-{dma,fiq}.o are added to to
snd-soc-imx-pcm-$(CONFIG_SND_SOC_IMX_PCM_DMA) and
snd-soc-imx-pcm-$(CONFIG_SND_SOC_IMX_PCM_FIQ) which resolve to
snd-soc-imx-pcm-m in this case.

According to Documentation/kbuild/modules.txt:
|When the module is built from multiple sources, an additional line is
|needed listing the files:
|
|        <module_name>-y := <src1>.o <src2>.o ...
Thus the type of the config variables CONFIG_SND_SOC_IMX_PCM_DMA and
CONFIG_SND_SOC_IMX_PCM_FIQ should be 'bool' instead of 'tristate' to
resolve to 'y' when selected.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2012-11-27 19:37:35 +00:00
..
atmel
au1x
blackfin Merge branch 'asoc-omap' into for-3.7 2012-09-05 20:05:11 +08:00
cirrus Sound updates for 3.7-rc1 2012-10-09 07:07:14 +09:00
codecs Merge branches 'fix/arizona', 'fix/cs4271', 'fix/kirkwood' and 'fix/samsung' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into tmp 2012-11-21 11:41:15 +09:00
davinci ASoC: Davinci: McASP: add support new McASP IP Variant 2012-09-06 08:20:33 +08:00
dwc
fsl ASoC: fsl: fix miscompilation of snd-soc-imx-pcm 2012-11-27 19:37:35 +00:00
generic
jz4740
kirkwood ASoC: kirkwood-i2s: more pause-mode fixes 2012-11-21 10:38:39 +09:00
mid-x86 ASoC: mid-x86 - add support for compressed streams 2012-08-20 20:50:39 +01:00
mxs ASoC: mxs-saif: export mxs_saif_put_mclk,mxs_saif_get_mclk 2012-11-27 19:37:35 +00:00
nuc900
omap ASoC: omap-dmic: Correct functional clock name 2012-10-27 23:00:18 +01:00
pxa ASoC: Fixes for v3.7 2012-10-17 14:09:15 +02:00
s6000
samsung ASoC: bells: Fix up git patch application failure 2012-11-16 09:30:56 +09:00
sh ASoC: fsi: don't reschedule DMA from an atomic context 2012-10-09 15:47:33 +09:00
spear ASoC: spear: correct the check for NULL dma_buffer pointer 2012-08-31 14:24:52 -07:00
tegra Sound updates for 3.7-rc1 2012-10-09 07:07:14 +09:00
txx9
ux500 ASoC: ux500_msp_i2s: Fix devm_* and return code merge error 2012-10-16 14:14:31 +09:00
Kconfig ASoC: Rename ep93xx soc directory to cirrus 2012-08-28 10:24:21 -07:00
Makefile ASoC: dmaengine: Correct Makefile when sound is built as module 2012-10-09 15:57:33 +09:00
soc-cache.c
soc-compress.c ASoC: soc-compress: Remove unused variable 2012-08-21 15:09:44 +01:00
soc-core.c ASoC: core: Double control update err for snd_soc_put_volsw_sx 2012-11-09 16:32:05 +00:00
soc-dapm.c ASoC: dapm: Use card_list during DAPM shutdown 2012-11-09 16:31:59 +00:00
soc-dmaengine-pcm.c dmaengine: Add flags parameter to dmaengine_prep_dma_cyclic() 2012-09-24 18:35:29 +02:00
soc-io.c
soc-jack.c ASoC: fix documentation in soc-jack 2012-10-09 15:38:23 +09:00
soc-pcm.c ASoC: dpcm: Allow FE to be opened without valid BE routes. 2012-07-06 19:06:58 +01:00
soc-utils.c