Re: [PATCH] ASoC: fsl: select SND_SOC_IMX_PCM_DMA where needed

Alexander Shiyan shc_work at mail.ru
Mon Apr 28 20:07:33 PDT 2014


Mon, 28 Apr 2014 23:12:14 +0200 от Arnd Bergmann <arnd at arndb.de>:
> On Tuesday 29 April 2014 00:35:41 Alexander Shiyan wrote:
...
> > > > > 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. However, these two options are for drivers that both
> > > > > require the imx-pcm-dma framework and result in a link error if that
> > > > > is not provided.
> > > > > 
> > > > > This changes Kconfig to automatically select SND_SOC_IMX_PCM_DMA
> > > > > to avoid the problem, as we do for other drivers that need the same
> > > > > framework.
> > > > > 
> > > > > Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> > > > 
> > > > Can you give an exact error?
> > > 
> > > 
> > > 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 call is defined in imx-pcm.h as:
> > #if IS_ENABLED(CONFIG_SND_SOC_IMX_PCM_DMA)
> > int imx_pcm_dma_init(struct platform_device *pdev);
> > #else
> > static inline int imx_pcm_dma_init(struct platform_device *pdev)
> > {
> >   return -ENODEV;
> > }
> > #endif
> > 
> > So, I don't understand why this error happen, as well as I can not
> > reproduce this...
> 
> It's probably CONFIG_SND_SOC_IMX_PCM_DMA=m and CONFIG_SND_SOC_FSL_SSI=y then.
> What is the intended behavior in this case? Should CONFIG_SND_SOC_FSL_SSI
> be forced to be a module as well?

Hmm, yes...
I thought that I had already solved a similar problem for the earlier
version of the patch ...

---



More information about the linux-arm-kernel mailing list