* [PATCH 1/2] ASoC: atmel: simplify Kconfig
@ 2015-05-25 22:04 Alexandre Belloni
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Alexandre Belloni @ 2015-05-25 22:04 UTC (permalink / raw)
To: Nicolas Ferre, Mark Brown
Cc: Arnd Bergmann, alsa-devel, linux-arm-kernel, linux-kernel,
Alexandre Belloni
Enclose the options in if SND_ATMEL_SOC ... endif to remove the dependency.
Also remove the useless description for SND_ATMEL_SOC_SSC.
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
---
sound/soc/atmel/Kconfig | 16 ++++++----------
1 file changed, 6 insertions(+), 10 deletions(-)
diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
index e7d08806f3e9..93abe4e6d596 100644
--- a/sound/soc/atmel/Kconfig
+++ b/sound/soc/atmel/Kconfig
@@ -6,27 +6,22 @@ config SND_ATMEL_SOC
the ATMEL SSC interface. You will also need
to select the audio interfaces to support below.
+if SND_ATMEL_SOC
+
config SND_ATMEL_SOC_PDC
tristate
- depends on SND_ATMEL_SOC
config SND_ATMEL_SOC_DMA
tristate
- depends on SND_ATMEL_SOC
select SND_SOC_GENERIC_DMAENGINE_PCM
config SND_ATMEL_SOC_SSC
tristate
- depends on SND_ATMEL_SOC
- help
- Say Y or M if you want to add support for codecs the
- ATMEL SSC interface. You will also needs to select the individual
- machine drivers to support below.
config SND_AT91_SOC_SAM9G20_WM8731
tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
depends on ARCH_AT91 || COMPILE_TEST
- depends on ATMEL_SSC && SND_ATMEL_SOC && SND_SOC_I2C_AND_SPI
+ depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
select SND_ATMEL_SOC_PDC
select SND_ATMEL_SOC_SSC
select SND_SOC_WM8731
@@ -37,7 +32,7 @@ config SND_AT91_SOC_SAM9G20_WM8731
config SND_ATMEL_SOC_WM8904
tristate "Atmel ASoC driver for boards using WM8904 codec"
depends on ARCH_AT91 || COMPILE_TEST
- depends on ATMEL_SSC && SND_ATMEL_SOC && I2C
+ depends on ATMEL_SSC && I2C
select SND_ATMEL_SOC_SSC
select SND_ATMEL_SOC_DMA
select SND_SOC_WM8904
@@ -48,10 +43,11 @@ config SND_ATMEL_SOC_WM8904
config SND_AT91_SOC_SAM9X5_WM8731
tristate "SoC Audio support for WM8731-based at91sam9x5 board"
depends on ARCH_AT91 || COMPILE_TEST
- depends on ATMEL_SSC && SND_ATMEL_SOC && SND_SOC_I2C_AND_SPI
+ depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
select SND_ATMEL_SOC_SSC
select SND_ATMEL_SOC_DMA
select SND_SOC_WM8731
help
Say Y if you want to add support for audio SoC on an
at91sam9x5 based board that is using WM8731 codec.
+endif
--
2.1.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-25 22:04 [PATCH 1/2] ASoC: atmel: simplify Kconfig Alexandre Belloni
@ 2015-05-25 22:04 ` Alexandre Belloni
2015-05-26 9:53 ` Mark Brown
` (3 more replies)
2015-05-26 9:53 ` [PATCH 1/2] ASoC: atmel: simplify Kconfig Mark Brown
2015-05-26 10:13 ` Nicolas Ferre
2 siblings, 4 replies; 11+ messages in thread
From: Alexandre Belloni @ 2015-05-25 22:04 UTC (permalink / raw)
To: Nicolas Ferre, Mark Brown
Cc: Arnd Bergmann, alsa-devel, linux-arm-kernel, linux-kernel,
Alexandre Belloni
It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either
CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a
driver that compiles but does not link with this kind of error:
sound/built-in.o: In function `atmel_ssc_set_audio':
(.text+0x87d90): undefined reference to `atmel_pcm_pdc_platform_register'
sound/built-in.o: In function `atmel_ssc_put_audio':
(.text+0x8879a): undefined reference to `atmel_pcm_pdc_platform_unregister'
Solve that by compiling the selected PCM driver (PDC, DMA or both) in the
Atmel SSC DAI driver.
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
---
sound/soc/atmel/Kconfig | 4 ++--
sound/soc/atmel/Makefile | 8 +++-----
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
index 93abe4e6d596..c3152072d682 100644
--- a/sound/soc/atmel/Kconfig
+++ b/sound/soc/atmel/Kconfig
@@ -9,10 +9,10 @@ config SND_ATMEL_SOC
if SND_ATMEL_SOC
config SND_ATMEL_SOC_PDC
- tristate
+ bool
config SND_ATMEL_SOC_DMA
- tristate
+ bool
select SND_SOC_GENERIC_DMAENGINE_PCM
config SND_ATMEL_SOC_SSC
diff --git a/sound/soc/atmel/Makefile b/sound/soc/atmel/Makefile
index b327e5cc8de3..4fa7ac91f972 100644
--- a/sound/soc/atmel/Makefile
+++ b/sound/soc/atmel/Makefile
@@ -1,10 +1,8 @@
# AT91 Platform Support
-snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o
-snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o
-snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
+snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_PDC) := atmel-pcm-pdc.o
+snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
+snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o $(snd-soc-atmel-pcm-y)
-obj-$(CONFIG_SND_ATMEL_SOC_PDC) += snd-soc-atmel-pcm-pdc.o
-obj-$(CONFIG_SND_ATMEL_SOC_DMA) += snd-soc-atmel-pcm-dma.o
obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o
# AT91 Machine Support
--
2.1.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 1/2] ASoC: atmel: simplify Kconfig
2015-05-25 22:04 [PATCH 1/2] ASoC: atmel: simplify Kconfig Alexandre Belloni
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
@ 2015-05-26 9:53 ` Mark Brown
2015-05-26 10:13 ` Nicolas Ferre
2 siblings, 0 replies; 11+ messages in thread
From: Mark Brown @ 2015-05-26 9:53 UTC (permalink / raw)
To: Alexandre Belloni
Cc: alsa-devel, Nicolas Ferre, linux-arm-kernel, Arnd Bergmann, linux-kernel
[-- Attachment #1.1: Type: text/plain, Size: 224 bytes --]
On Tue, May 26, 2015 at 12:04:18AM +0200, Alexandre Belloni wrote:
> Enclose the options in if SND_ATMEL_SOC ... endif to remove the dependency.
> Also remove the useless description for SND_ATMEL_SOC_SSC.
Applied, thanks.
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
@ 2015-05-26 9:53 ` Mark Brown
2015-05-26 10:14 ` Nicolas Ferre
` (2 subsequent siblings)
3 siblings, 0 replies; 11+ messages in thread
From: Mark Brown @ 2015-05-26 9:53 UTC (permalink / raw)
To: Alexandre Belloni
Cc: alsa-devel, Nicolas Ferre, linux-arm-kernel, Arnd Bergmann, linux-kernel
[-- Attachment #1.1: Type: text/plain, Size: 303 bytes --]
On Tue, May 26, 2015 at 12:04:19AM +0200, Alexandre Belloni wrote:
> It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either
> CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a
> driver that compiles but does not link with this kind of error:
Applied, thanks.
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 1/2] ASoC: atmel: simplify Kconfig
2015-05-25 22:04 [PATCH 1/2] ASoC: atmel: simplify Kconfig Alexandre Belloni
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
2015-05-26 9:53 ` [PATCH 1/2] ASoC: atmel: simplify Kconfig Mark Brown
@ 2015-05-26 10:13 ` Nicolas Ferre
2 siblings, 0 replies; 11+ messages in thread
From: Nicolas Ferre @ 2015-05-26 10:13 UTC (permalink / raw)
To: Alexandre Belloni, Mark Brown
Cc: alsa-devel, linux-arm-kernel, Arnd Bergmann, linux-kernel
Le 26/05/2015 00:04, Alexandre Belloni a écrit :
> Enclose the options in if SND_ATMEL_SOC ... endif to remove the dependency.
> Also remove the useless description for SND_ATMEL_SOC_SSC.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
For the record:
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
> ---
> sound/soc/atmel/Kconfig | 16 ++++++----------
> 1 file changed, 6 insertions(+), 10 deletions(-)
>
> diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
> index e7d08806f3e9..93abe4e6d596 100644
> --- a/sound/soc/atmel/Kconfig
> +++ b/sound/soc/atmel/Kconfig
> @@ -6,27 +6,22 @@ config SND_ATMEL_SOC
> the ATMEL SSC interface. You will also need
> to select the audio interfaces to support below.
>
> +if SND_ATMEL_SOC
> +
> config SND_ATMEL_SOC_PDC
> tristate
> - depends on SND_ATMEL_SOC
>
> config SND_ATMEL_SOC_DMA
> tristate
> - depends on SND_ATMEL_SOC
> select SND_SOC_GENERIC_DMAENGINE_PCM
>
> config SND_ATMEL_SOC_SSC
> tristate
> - depends on SND_ATMEL_SOC
> - help
> - Say Y or M if you want to add support for codecs the
> - ATMEL SSC interface. You will also needs to select the individual
> - machine drivers to support below.
>
> config SND_AT91_SOC_SAM9G20_WM8731
> tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
> depends on ARCH_AT91 || COMPILE_TEST
> - depends on ATMEL_SSC && SND_ATMEL_SOC && SND_SOC_I2C_AND_SPI
> + depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
> select SND_ATMEL_SOC_PDC
> select SND_ATMEL_SOC_SSC
> select SND_SOC_WM8731
> @@ -37,7 +32,7 @@ config SND_AT91_SOC_SAM9G20_WM8731
> config SND_ATMEL_SOC_WM8904
> tristate "Atmel ASoC driver for boards using WM8904 codec"
> depends on ARCH_AT91 || COMPILE_TEST
> - depends on ATMEL_SSC && SND_ATMEL_SOC && I2C
> + depends on ATMEL_SSC && I2C
> select SND_ATMEL_SOC_SSC
> select SND_ATMEL_SOC_DMA
> select SND_SOC_WM8904
> @@ -48,10 +43,11 @@ config SND_ATMEL_SOC_WM8904
> config SND_AT91_SOC_SAM9X5_WM8731
> tristate "SoC Audio support for WM8731-based at91sam9x5 board"
> depends on ARCH_AT91 || COMPILE_TEST
> - depends on ATMEL_SSC && SND_ATMEL_SOC && SND_SOC_I2C_AND_SPI
> + depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
> select SND_ATMEL_SOC_SSC
> select SND_ATMEL_SOC_DMA
> select SND_SOC_WM8731
> help
> Say Y if you want to add support for audio SoC on an
> at91sam9x5 based board that is using WM8731 codec.
> +endif
>
--
Nicolas Ferre
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
2015-05-26 9:53 ` Mark Brown
@ 2015-05-26 10:14 ` Nicolas Ferre
2015-05-26 10:53 ` Arnd Bergmann
2015-05-27 7:50 ` Paul Bolle
3 siblings, 0 replies; 11+ messages in thread
From: Nicolas Ferre @ 2015-05-26 10:14 UTC (permalink / raw)
To: Alexandre Belloni, Mark Brown
Cc: alsa-devel, linux-arm-kernel, Arnd Bergmann, linux-kernel
Le 26/05/2015 00:04, Alexandre Belloni a écrit :
> It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either
> CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a
> driver that compiles but does not link with this kind of error:
>
> sound/built-in.o: In function `atmel_ssc_set_audio':
> (.text+0x87d90): undefined reference to `atmel_pcm_pdc_platform_register'
> sound/built-in.o: In function `atmel_ssc_put_audio':
> (.text+0x8879a): undefined reference to `atmel_pcm_pdc_platform_unregister'
>
> Solve that by compiling the selected PCM driver (PDC, DMA or both) in the
> Atmel SSC DAI driver.
>
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
For the record:
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
> ---
> sound/soc/atmel/Kconfig | 4 ++--
> sound/soc/atmel/Makefile | 8 +++-----
> 2 files changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
> index 93abe4e6d596..c3152072d682 100644
> --- a/sound/soc/atmel/Kconfig
> +++ b/sound/soc/atmel/Kconfig
> @@ -9,10 +9,10 @@ config SND_ATMEL_SOC
> if SND_ATMEL_SOC
>
> config SND_ATMEL_SOC_PDC
> - tristate
> + bool
>
> config SND_ATMEL_SOC_DMA
> - tristate
> + bool
> select SND_SOC_GENERIC_DMAENGINE_PCM
>
> config SND_ATMEL_SOC_SSC
> diff --git a/sound/soc/atmel/Makefile b/sound/soc/atmel/Makefile
> index b327e5cc8de3..4fa7ac91f972 100644
> --- a/sound/soc/atmel/Makefile
> +++ b/sound/soc/atmel/Makefile
> @@ -1,10 +1,8 @@
> # AT91 Platform Support
> -snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o
> -snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o
> -snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_PDC) := atmel-pcm-pdc.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
> +snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o $(snd-soc-atmel-pcm-y)
>
> -obj-$(CONFIG_SND_ATMEL_SOC_PDC) += snd-soc-atmel-pcm-pdc.o
> -obj-$(CONFIG_SND_ATMEL_SOC_DMA) += snd-soc-atmel-pcm-dma.o
> obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o
>
> # AT91 Machine Support
>
--
Nicolas Ferre
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
2015-05-26 9:53 ` Mark Brown
2015-05-26 10:14 ` Nicolas Ferre
@ 2015-05-26 10:53 ` Arnd Bergmann
2015-05-27 7:50 ` Paul Bolle
3 siblings, 0 replies; 11+ messages in thread
From: Arnd Bergmann @ 2015-05-26 10:53 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Nicolas Ferre, alsa-devel, Mark Brown, Alexandre Belloni, linux-kernel
On Tuesday 26 May 2015 00:04:19 Alexandre Belloni wrote:
> index b327e5cc8de3..4fa7ac91f972 100644
> --- a/sound/soc/atmel/Makefile
> +++ b/sound/soc/atmel/Makefile
> @@ -1,10 +1,8 @@
> # AT91 Platform Support
> -snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o
> -snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o
> -snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_PDC) := atmel-pcm-pdc.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
> +snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o $(snd-soc-atmel-pcm-y)
While technically correct, you could have written this (slightly)
simpler as:
snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
snd-soc-atmel-ssc_dai-$(CONFIG_SND_ATMEL_SOC_PDC) += atmel-pcm-pdc.o
snd-soc-atmel-ssc_dai-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
No need to change the patch again after it's applied now.
Arnd
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
` (2 preceding siblings ...)
2015-05-26 10:53 ` Arnd Bergmann
@ 2015-05-27 7:50 ` Paul Bolle
2015-05-27 9:19 ` Alexandre Belloni
3 siblings, 1 reply; 11+ messages in thread
From: Paul Bolle @ 2015-05-27 7:50 UTC (permalink / raw)
To: Alexandre Belloni
Cc: Nicolas Ferre, Mark Brown, Arnd Bergmann, alsa-devel,
linux-arm-kernel, linux-kernel
Now that this patch is already applied my remarks can only be addressed
in a follow up patch. (Perhaps such a patch is already queued.)
On Tue, 2015-05-26 at 00:04 +0200, Alexandre Belloni wrote:
> --- a/sound/soc/atmel/Kconfig
> +++ b/sound/soc/atmel/Kconfig
> config SND_ATMEL_SOC_PDC
> - tristate
> + bool
>
> config SND_ATMEL_SOC_DMA
> - tristate
> + bool
> select SND_SOC_GENERIC_DMAENGINE_PCM
> --- a/sound/soc/atmel/Makefile
> +++ b/sound/soc/atmel/Makefile
> -snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o
> -snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o
> -snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_PDC) := atmel-pcm-pdc.o
> +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
> +snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o $(snd-soc-atmel-pcm-y)
>
> -obj-$(CONFIG_SND_ATMEL_SOC_PDC) += snd-soc-atmel-pcm-pdc.o
> -obj-$(CONFIG_SND_ATMEL_SOC_DMA) += snd-soc-atmel-pcm-dma.o
> obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o
The code in atmel-pcm-pdc.c and atmel-pcm-dma.c will now either be part
of the snd-soc-atmel_ssc_dai.ko or be built-in. That means, I think,
that:
- the (in total) four uses of EXPORT_SYMBOL() in these two files can be
dropped;
- MODULE_AUTHOR() and friends, and probably also the include of
linux/module.h, can be dropped from these two files.
Furthermore, the references to CONFIG_SND_ATMEL_SOC_PDC_MODULE and
CONFIG_SND_ATMEL_SOC_DMA_MODULE in atmel-pcm.h can be removed now.
Thanks,
Paul Bolle
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-27 7:50 ` Paul Bolle
@ 2015-05-27 9:19 ` Alexandre Belloni
2015-05-27 9:25 ` Paul Bolle
0 siblings, 1 reply; 11+ messages in thread
From: Alexandre Belloni @ 2015-05-27 9:19 UTC (permalink / raw)
To: Paul Bolle
Cc: Nicolas Ferre, Mark Brown, Arnd Bergmann, alsa-devel,
linux-arm-kernel, linux-kernel
On 27/05/2015 at 09:50:24 +0200, Paul Bolle wrote :
> Now that this patch is already applied my remarks can only be addressed
> in a follow up patch. (Perhaps such a patch is already queued.)
>
> On Tue, 2015-05-26 at 00:04 +0200, Alexandre Belloni wrote:
> > --- a/sound/soc/atmel/Kconfig
> > +++ b/sound/soc/atmel/Kconfig
>
> > config SND_ATMEL_SOC_PDC
> > - tristate
> > + bool
> >
> > config SND_ATMEL_SOC_DMA
> > - tristate
> > + bool
> > select SND_SOC_GENERIC_DMAENGINE_PCM
>
> > --- a/sound/soc/atmel/Makefile
> > +++ b/sound/soc/atmel/Makefile
>
> > -snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o
> > -snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o
> > -snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o
> > +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_PDC) := atmel-pcm-pdc.o
> > +snd-soc-atmel-pcm-$(CONFIG_SND_ATMEL_SOC_DMA) += atmel-pcm-dma.o
> > +snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o $(snd-soc-atmel-pcm-y)
> >
> > -obj-$(CONFIG_SND_ATMEL_SOC_PDC) += snd-soc-atmel-pcm-pdc.o
> > -obj-$(CONFIG_SND_ATMEL_SOC_DMA) += snd-soc-atmel-pcm-dma.o
> > obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o
>
> The code in atmel-pcm-pdc.c and atmel-pcm-dma.c will now either be part
> of the snd-soc-atmel_ssc_dai.ko or be built-in. That means, I think,
> that:
> - the (in total) four uses of EXPORT_SYMBOL() in these two files can be
> dropped;
> - MODULE_AUTHOR() and friends, and probably also the include of
> linux/module.h, can be dropped from these two files.
>
Yeah, I as not sure how to merge those MODULE_AUTHOR but I checked and
the information is correctly included.
> Furthermore, the references to CONFIG_SND_ATMEL_SOC_PDC_MODULE and
> CONFIG_SND_ATMEL_SOC_DMA_MODULE in atmel-pcm.h can be removed now.
>
Indeed.
However, the Kconfig maintainer found a way to do the right thing so we
may as well drop that patch and keep those as modules.
Nicolas, what do you think?
--
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-27 9:19 ` Alexandre Belloni
@ 2015-05-27 9:25 ` Paul Bolle
2015-05-28 9:36 ` Alexandre Belloni
0 siblings, 1 reply; 11+ messages in thread
From: Paul Bolle @ 2015-05-27 9:25 UTC (permalink / raw)
To: Alexandre Belloni
Cc: Nicolas Ferre, Mark Brown, Arnd Bergmann, alsa-devel,
linux-arm-kernel, linux-kernel
On Wed, 2015-05-27 at 11:19 +0200, Alexandre Belloni wrote:
> However, the Kconfig maintainer found a way to do the right thing so we
> may as well drop that patch and keep those as modules.
Perhaps I missed a message: do you have a link?
(I fiddled a bit with the build setup of these drivers too, but then
noticed that the patch was already applied, and abandoned that.)
Thanks,
Paul Bolle
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai
2015-05-27 9:25 ` Paul Bolle
@ 2015-05-28 9:36 ` Alexandre Belloni
0 siblings, 0 replies; 11+ messages in thread
From: Alexandre Belloni @ 2015-05-28 9:36 UTC (permalink / raw)
To: Paul Bolle
Cc: Nicolas Ferre, Mark Brown, Arnd Bergmann, alsa-devel,
linux-arm-kernel, linux-kernel
Hi,
On 27/05/2015 at 11:25:49 +0200, Paul Bolle wrote :
> On Wed, 2015-05-27 at 11:19 +0200, Alexandre Belloni wrote:
> > However, the Kconfig maintainer found a way to do the right thing so we
> > may as well drop that patch and keep those as modules.
>
> Perhaps I missed a message: do you have a link?
>
It was part of a private discussion. This would give that (replaces my
other patch) if you want to test:
>From b93ca1a4d9fa63c37e3d2b0aecbd1ec691a40922 Mon Sep 17 00:00:00 2001
From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Date: Mon, 25 May 2015 23:42:17 +0200
Subject: [PATCH] ASoC: atmel: properly select dma driver state
It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either
CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a
driver that compiles but does not link with this kind of error:
sound/built-in.o: In function `atmel_ssc_set_audio':
(.text+0x87d90): undefined reference to `atmel_pcm_pdc_platform_register'
sound/built-in.o: In function `atmel_ssc_put_audio':
(.text+0x8879a): undefined reference to `atmel_pcm_pdc_platform_unregister'
Introduce new config options SND_ATMEL_SOC_SSC_PDC and
SND_ATMEL_SOC_SSC_DMA which should be used by the board drivers and the
correct logic to properly select the SND_ATMEL_SOC_PDC and
SND_ATMEL_SOC_DMA states.
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
---
sound/soc/atmel/Kconfig | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig
index 93abe4e6d596..1489cd461aec 100644
--- a/sound/soc/atmel/Kconfig
+++ b/sound/soc/atmel/Kconfig
@@ -10,20 +10,31 @@ if SND_ATMEL_SOC
config SND_ATMEL_SOC_PDC
tristate
+ default m if SND_ATMEL_SOC_SSC_PDC=m && SND_ATMEL_SOC_SSC=m
+ default y if SND_ATMEL_SOC_SSC_PDC=y || (SND_ATMEL_SOC_SSC_PDC=m && SND_ATMEL_SOC_SSC=y)
+
+config SND_ATMEL_SOC_SSC_PDC
+ tristate
config SND_ATMEL_SOC_DMA
tristate
select SND_SOC_GENERIC_DMAENGINE_PCM
+ default m if SND_ATMEL_SOC_SSC_DMA=m && SND_ATMEL_SOC_SSC=m
+ default y if SND_ATMEL_SOC_SSC_DMA=y || (SND_ATMEL_SOC_SSC_DMA=m && SND_ATMEL_SOC_SSC=y)
+
+config SND_ATMEL_SOC_SSC_DMA
+ tristate
config SND_ATMEL_SOC_SSC
tristate
+ default y if SND_ATMEL_SOC_SSC_DMA=y || SND_ATMEL_SOC_SSC_PDC=y
+ default m if SND_ATMEL_SOC_SSC_DMA=m || SND_ATMEL_SOC_SSC_PDC=m
config SND_AT91_SOC_SAM9G20_WM8731
tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board"
depends on ARCH_AT91 || COMPILE_TEST
depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
- select SND_ATMEL_SOC_PDC
- select SND_ATMEL_SOC_SSC
+ select SND_ATMEL_SOC_SSC_PDC
select SND_SOC_WM8731
help
Say Y if you want to add support for SoC audio on WM8731-based
@@ -33,8 +44,7 @@ config SND_ATMEL_SOC_WM8904
tristate "Atmel ASoC driver for boards using WM8904 codec"
depends on ARCH_AT91 || COMPILE_TEST
depends on ATMEL_SSC && I2C
- select SND_ATMEL_SOC_SSC
- select SND_ATMEL_SOC_DMA
+ select SND_ATMEL_SOC_SSC_DMA
select SND_SOC_WM8904
help
Say Y if you want to add support for Atmel ASoC driver for boards using
@@ -44,8 +54,7 @@ config SND_AT91_SOC_SAM9X5_WM8731
tristate "SoC Audio support for WM8731-based at91sam9x5 board"
depends on ARCH_AT91 || COMPILE_TEST
depends on ATMEL_SSC && SND_SOC_I2C_AND_SPI
- select SND_ATMEL_SOC_SSC
- select SND_ATMEL_SOC_DMA
+ select SND_ATMEL_SOC_SSC_DMA
select SND_SOC_WM8731
help
Say Y if you want to add support for audio SoC on an
--
2.1.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2015-05-28 9:36 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-25 22:04 [PATCH 1/2] ASoC: atmel: simplify Kconfig Alexandre Belloni
2015-05-25 22:04 ` [PATCH 2/2] ASoC: atmel: compile pcm driver in snd-soc-atmel_ssc_dai Alexandre Belloni
2015-05-26 9:53 ` Mark Brown
2015-05-26 10:14 ` Nicolas Ferre
2015-05-26 10:53 ` Arnd Bergmann
2015-05-27 7:50 ` Paul Bolle
2015-05-27 9:19 ` Alexandre Belloni
2015-05-27 9:25 ` Paul Bolle
2015-05-28 9:36 ` Alexandre Belloni
2015-05-26 9:53 ` [PATCH 1/2] ASoC: atmel: simplify Kconfig Mark Brown
2015-05-26 10:13 ` Nicolas Ferre
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).