[alsa-devel] [PATCH] ASoC: dmaengine: Correct Makefile when sound is built as module
Mark Brown
broonie at opensource.wolfsonmicro.com
Wed Oct 10 03:48:35 CEST 2012
On Tue, Oct 09, 2012 at 03:16:15PM +0200, Péter Ujfalusi wrote:
> On 10/09/2012 11:08 AM, Mark Brown wrote:
> > What makes you believe that this is due to the code not being part of
> > the core module?
> the linker tells me.
No it doesn't.
> Without this patch with mainline kernel from today (I used tegra to see if it
> happens there as well):
> [sound/soc/tegra/snd-soc-tegra-pcm.ko] undefined!
> ERROR: "snd_dmaengine_pcm_pointer" [sound/soc/tegra/snd-soc-tegra-pcm.ko]
> undefined!
> I guess it was due to the Kconfig/Makefile related to soc-dmaengine:
All the above is telling you is that if you make this change the error
goes away. It doesn't explain what the problem is or why this change
fixes it.
> config SND_SOC_DMAENGINE_PCM
> bool
> snd-soc-dmaengine-pcm-objs := soc-dmaengine-pcm.o
> obj-$(CONFIG_SND_SOC_DMAENGINE_PCM) += snd-soc-dmaengine-pcm.o
> My guess is that in this way the soc-dmaengine-pcm.o would want itself to be
> built in to the kernel but since the sound is in modules there is no place to
> link this part of the code.
> If I change the Kconfig from bool to tristate it will build
Indeed, so this is getting warmer. The problem is that the way Kconfig
is set up is causing CONFIG_SND_SOC_DMAENGINE_PCM to come out as
something that doesn't get built as it's a bool selected by a module and
as you say one fix here is to make the dmaengine code a module by itself.
> snd-soc-dmaengine-pcm.ko but since the soc-dmaengine-pcm.c does not have
> module_init it is not really going to load.
> I might be wrong.
No, why would module_init() have anything to do with this? Is there
something that needs to be run at startup for soc-dmaengine?
More information about the Alsa-devel
mailing list