All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ASoC: Intel: fix Kconfig dependencies
@ 2017-11-02 11:07 ` Arnd Bergmann
  0 siblings, 0 replies; 14+ messages in thread
From: Arnd Bergmann @ 2017-11-02 11:07 UTC (permalink / raw)
  To: Mark Brown
  Cc: Arnd Bergmann, Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
	Pierre-Louis Bossart, Vinod Koul, Andy Shevchenko,
	Harsha Priya N, Naveen M, alsa-devel, linux-kernel

I ran into multiple problems during randconfig builds of the
recently changed Kconfig logic for Intel ASoC drivers:

- Building without DMADEVICES doesn't work in general
- With that dependency added, we can relax the 'depends
  on X86' again and allow compile-testing, except for
  SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
  for asm/platform_sst_audio.h
- Skylake requires SND_SOC_INTEL_SST_ACPI, so we
  have to depend on ACPI in turn
- Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

With the new set of dependencies, I no longer get any build
failures.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 sound/soc/intel/Kconfig | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index a59dda39007e..e18118209b75 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
 
 config SND_SOC_INTEL_SST_TOPLEVEL
 	tristate "Intel ASoC SST drivers"
-	depends on X86
+	depends on X86 || COMPILE_TEST
+	depends on DMADEVICES
 	select SND_SOC_INTEL_MACH
 	select SND_SOC_INTEL_COMMON
 
 config SND_SOC_INTEL_HASWELL
 	tristate "Intel ASoC SST driver for Haswell/Broadwell"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
 	select SND_SOC_INTEL_SST
 	select SND_SOC_INTEL_SST_FIRMWARE
 
@@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
 
 config SND_SST_ATOM_HIFI2_PLATFORM
 	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
 	select SND_SOC_COMPRESS
 
 config SND_SOC_INTEL_SKYLAKE
 	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
 	select SND_HDA_EXT_CORE
 	select SND_HDA_DSP_LOADER
 	select SND_SOC_TOPOLOGY
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH] ASoC: Intel: fix Kconfig dependencies
@ 2017-11-02 11:07 ` Arnd Bergmann
  0 siblings, 0 replies; 14+ messages in thread
From: Arnd Bergmann @ 2017-11-02 11:07 UTC (permalink / raw)
  To: Mark Brown
  Cc: alsa-devel, Andy Shevchenko, Arnd Bergmann, Liam Girdwood,
	Vinod Koul, linux-kernel, Pierre-Louis Bossart, Takashi Iwai,
	Harsha Priya N, Naveen M

I ran into multiple problems during randconfig builds of the
recently changed Kconfig logic for Intel ASoC drivers:

- Building without DMADEVICES doesn't work in general
- With that dependency added, we can relax the 'depends
  on X86' again and allow compile-testing, except for
  SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
  for asm/platform_sst_audio.h
- Skylake requires SND_SOC_INTEL_SST_ACPI, so we
  have to depend on ACPI in turn
- Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

With the new set of dependencies, I no longer get any build
failures.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 sound/soc/intel/Kconfig | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index a59dda39007e..e18118209b75 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
 
 config SND_SOC_INTEL_SST_TOPLEVEL
 	tristate "Intel ASoC SST drivers"
-	depends on X86
+	depends on X86 || COMPILE_TEST
+	depends on DMADEVICES
 	select SND_SOC_INTEL_MACH
 	select SND_SOC_INTEL_COMMON
 
 config SND_SOC_INTEL_HASWELL
 	tristate "Intel ASoC SST driver for Haswell/Broadwell"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
 	select SND_SOC_INTEL_SST
 	select SND_SOC_INTEL_SST_FIRMWARE
 
@@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
 
 config SND_SST_ATOM_HIFI2_PLATFORM
 	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
 	select SND_SOC_COMPRESS
 
 config SND_SOC_INTEL_SKYLAKE
 	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
 	select SND_HDA_EXT_CORE
 	select SND_HDA_DSP_LOADER
 	select SND_SOC_TOPOLOGY
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Applied "ASoC: Intel: fix Kconfig dependencies" to the asoc tree
  2017-11-02 11:07 ` Arnd Bergmann
@ 2017-11-02 11:21   ` Mark Brown
  -1 siblings, 0 replies; 14+ messages in thread
From: Mark Brown @ 2017-11-02 11:21 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Mark Brown, Mark Brown, alsa-devel, Andy Shevchenko,
	Liam Girdwood, Vinod Koul, linux-kernel, Pierre-Louis Bossart,
	Takashi Iwai, Harsha Priya N, Naveen M, alsa-devel

The patch

   ASoC: Intel: fix Kconfig dependencies

has been applied to the asoc tree at

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git 

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.  

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark

>From f7a88db6fffdd193d792de5dae7890528b995cc0 Mon Sep 17 00:00:00 2001
From: Arnd Bergmann <arnd@arndb.de>
Date: Thu, 2 Nov 2017 12:07:04 +0100
Subject: [PATCH] ASoC: Intel: fix Kconfig dependencies

I ran into multiple problems during randconfig builds of the
recently changed Kconfig logic for Intel ASoC drivers:

- Building without DMADEVICES doesn't work in general
- With that dependency added, we can relax the 'depends
  on X86' again and allow compile-testing, except for
  SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
  for asm/platform_sst_audio.h
- Skylake requires SND_SOC_INTEL_SST_ACPI, so we
  have to depend on ACPI in turn
- Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

With the new set of dependencies, I no longer get any build
failures.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
---
 sound/soc/intel/Kconfig | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index a59dda39007e..e18118209b75 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
 
 config SND_SOC_INTEL_SST_TOPLEVEL
 	tristate "Intel ASoC SST drivers"
-	depends on X86
+	depends on X86 || COMPILE_TEST
+	depends on DMADEVICES
 	select SND_SOC_INTEL_MACH
 	select SND_SOC_INTEL_COMMON
 
 config SND_SOC_INTEL_HASWELL
 	tristate "Intel ASoC SST driver for Haswell/Broadwell"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
 	select SND_SOC_INTEL_SST
 	select SND_SOC_INTEL_SST_FIRMWARE
 
@@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
 
 config SND_SST_ATOM_HIFI2_PLATFORM
 	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
 	select SND_SOC_COMPRESS
 
 config SND_SOC_INTEL_SKYLAKE
 	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
 	select SND_HDA_EXT_CORE
 	select SND_HDA_DSP_LOADER
 	select SND_SOC_TOPOLOGY
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Applied "ASoC: Intel: fix Kconfig dependencies" to the asoc tree
@ 2017-11-02 11:21   ` Mark Brown
  0 siblings, 0 replies; 14+ messages in thread
From: Mark Brown @ 2017-11-02 11:21 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: Mark Brown

The patch

   ASoC: Intel: fix Kconfig dependencies

has been applied to the asoc tree at

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git 

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.  

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark

>From f7a88db6fffdd193d792de5dae7890528b995cc0 Mon Sep 17 00:00:00 2001
From: Arnd Bergmann <arnd@arndb.de>
Date: Thu, 2 Nov 2017 12:07:04 +0100
Subject: [PATCH] ASoC: Intel: fix Kconfig dependencies

I ran into multiple problems during randconfig builds of the
recently changed Kconfig logic for Intel ASoC drivers:

- Building without DMADEVICES doesn't work in general
- With that dependency added, we can relax the 'depends
  on X86' again and allow compile-testing, except for
  SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
  for asm/platform_sst_audio.h
- Skylake requires SND_SOC_INTEL_SST_ACPI, so we
  have to depend on ACPI in turn
- Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

With the new set of dependencies, I no longer get any build
failures.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
---
 sound/soc/intel/Kconfig | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index a59dda39007e..e18118209b75 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
 
 config SND_SOC_INTEL_SST_TOPLEVEL
 	tristate "Intel ASoC SST drivers"
-	depends on X86
+	depends on X86 || COMPILE_TEST
+	depends on DMADEVICES
 	select SND_SOC_INTEL_MACH
 	select SND_SOC_INTEL_COMMON
 
 config SND_SOC_INTEL_HASWELL
 	tristate "Intel ASoC SST driver for Haswell/Broadwell"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
 	select SND_SOC_INTEL_SST
 	select SND_SOC_INTEL_SST_FIRMWARE
 
@@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
 
 config SND_SST_ATOM_HIFI2_PLATFORM
 	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
 	select SND_SOC_COMPRESS
 
 config SND_SOC_INTEL_SKYLAKE
 	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
-	depends on SND_SOC_INTEL_SST_TOPLEVEL
+	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
 	select SND_HDA_EXT_CORE
 	select SND_HDA_DSP_LOADER
 	select SND_SOC_TOPOLOGY
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 11:07 ` Arnd Bergmann
@ 2017-11-02 12:43   ` Pierre-Louis Bossart
  -1 siblings, 0 replies; 14+ messages in thread
From: Pierre-Louis Bossart @ 2017-11-02 12:43 UTC (permalink / raw)
  To: Arnd Bergmann, Mark Brown
  Cc: Liam Girdwood, Jaroslav Kysela, Takashi Iwai, Vinod Koul,
	Andy Shevchenko, Harsha Priya N, Naveen M, alsa-devel,
	linux-kernel

On 11/2/17 6:07 AM, Arnd Bergmann wrote:
> I ran into multiple problems during randconfig builds of the
> recently changed Kconfig logic for Intel ASoC drivers:

we did quite a bit of testing on this change, looks like we missed a 
number of cases. Gah.

> 
> - Building without DMADEVICES doesn't work in general

the Intel audio hardware has its own DMA in general, be it based on 
DesignWare controlled by audio firmware or HDaudio, not sure if/why this 
dependency is needed across the board?

> - With that dependency added, we can relax the 'depends
>    on X86' again and allow compile-testing, except for
>    SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
>    for asm/platform_sst_audio. > - Skylake requires SND_SOC_INTEL_SST_ACPI, so we
>    have to depend on ACPI in turn
> - Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

This one is surprising as well, this was not there before so it either 
was not detected or is not needed?

> 
> With the new set of dependencies, I no longer get any build
> failures.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>   sound/soc/intel/Kconfig | 9 +++++----
>   1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index a59dda39007e..e18118209b75 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
>   
>   config SND_SOC_INTEL_SST_TOPLEVEL
>   	tristate "Intel ASoC SST drivers"
> -	depends on X86
> +	depends on X86 || COMPILE_TEST
> +	depends on DMADEVICES
>   	select SND_SOC_INTEL_MACH
>   	select SND_SOC_INTEL_COMMON
>   
>   config SND_SOC_INTEL_HASWELL
>   	tristate "Intel ASoC SST driver for Haswell/Broadwell"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
>   	select SND_SOC_INTEL_SST
>   	select SND_SOC_INTEL_SST_FIRMWARE
>   
> @@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
>   
>   config SND_SST_ATOM_HIFI2_PLATFORM
>   	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
>   	select SND_SOC_COMPRESS
>   
>   config SND_SOC_INTEL_SKYLAKE
>   	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
>   	select SND_HDA_EXT_CORE
>   	select SND_HDA_DSP_LOADER
>   	select SND_SOC_TOPOLOGY
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] ASoC: Intel: fix Kconfig dependencies
@ 2017-11-02 12:43   ` Pierre-Louis Bossart
  0 siblings, 0 replies; 14+ messages in thread
From: Pierre-Louis Bossart @ 2017-11-02 12:43 UTC (permalink / raw)
  To: Arnd Bergmann, Mark Brown
  Cc: alsa-devel, Vinod Koul, linux-kernel, Takashi Iwai,
	Liam Girdwood, Harsha Priya N, Naveen M, Andy Shevchenko

On 11/2/17 6:07 AM, Arnd Bergmann wrote:
> I ran into multiple problems during randconfig builds of the
> recently changed Kconfig logic for Intel ASoC drivers:

we did quite a bit of testing on this change, looks like we missed a 
number of cases. Gah.

> 
> - Building without DMADEVICES doesn't work in general

the Intel audio hardware has its own DMA in general, be it based on 
DesignWare controlled by audio firmware or HDaudio, not sure if/why this 
dependency is needed across the board?

> - With that dependency added, we can relax the 'depends
>    on X86' again and allow compile-testing, except for
>    SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
>    for asm/platform_sst_audio. > - Skylake requires SND_SOC_INTEL_SST_ACPI, so we
>    have to depend on ACPI in turn
> - Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()

This one is surprising as well, this was not there before so it either 
was not detected or is not needed?

> 
> With the new set of dependencies, I no longer get any build
> failures.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>   sound/soc/intel/Kconfig | 9 +++++----
>   1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index a59dda39007e..e18118209b75 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -31,13 +31,14 @@ config SND_SOC_ACPI_INTEL_MATCH
>   
>   config SND_SOC_INTEL_SST_TOPLEVEL
>   	tristate "Intel ASoC SST drivers"
> -	depends on X86
> +	depends on X86 || COMPILE_TEST
> +	depends on DMADEVICES
>   	select SND_SOC_INTEL_MACH
>   	select SND_SOC_INTEL_COMMON
>   
>   config SND_SOC_INTEL_HASWELL
>   	tristate "Intel ASoC SST driver for Haswell/Broadwell"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
>   	select SND_SOC_INTEL_SST
>   	select SND_SOC_INTEL_SST_FIRMWARE
>   
> @@ -49,12 +50,12 @@ config SND_SOC_INTEL_BAYTRAIL
>   
>   config SND_SST_ATOM_HIFI2_PLATFORM
>   	tristate "Intel ASoC SST driver for HiFi2 platforms (*field, *trail)"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && X86
>   	select SND_SOC_COMPRESS
>   
>   config SND_SOC_INTEL_SKYLAKE
>   	tristate "Intel ASoC SST driver for SKL/BXT/KBL/GLK/CNL"
> -	depends on SND_SOC_INTEL_SST_TOPLEVEL
> +	depends on SND_SOC_INTEL_SST_TOPLEVEL && PCI && ACPI
>   	select SND_HDA_EXT_CORE
>   	select SND_HDA_DSP_LOADER
>   	select SND_SOC_TOPOLOGY
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 12:43   ` Pierre-Louis Bossart
  (?)
@ 2017-11-02 13:04   ` Arnd Bergmann
  2017-11-02 13:12     ` Arnd Bergmann
  -1 siblings, 1 reply; 14+ messages in thread
From: Arnd Bergmann @ 2017-11-02 13:04 UTC (permalink / raw)
  To: Pierre-Louis Bossart
  Cc: Mark Brown, Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
	Vinod Koul, Andy Shevchenko, Harsha Priya N, Naveen M,
	alsa-devel, Linux Kernel Mailing List

On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
<pierre-louis.bossart@linux.intel.com> wrote:
> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
>>
>> I ran into multiple problems during randconfig builds of the
>> recently changed Kconfig logic for Intel ASoC drivers:
>
>
> we did quite a bit of testing on this change, looks like we missed a number
> of cases. Gah.
>
>>
>> - Building without DMADEVICES doesn't work in general
>
>
> the Intel audio hardware has its own DMA in general, be it based on
> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
> dependency is needed across the board?

Probably my mistake. I'll try again without the dependency and see
what problems I run into then and what the correct fix is.

>> - With that dependency added, we can relax the 'depends
>>    on X86' again and allow compile-testing, except for
>>    SND_SST_ATOM_HIFI2_PLATFORM, which depends on X86
>>    for asm/platform_sst_audio. > - Skylake requires
>> SND_SOC_INTEL_SST_ACPI, so we
>>    have to depend on ACPI in turn
>> - Haswell needs SND_DMA_SGBUF for snd_sgbuf_aligned_pages()
>
>
> This one is surprising as well, this was not there before so it either was
> not detected or is not needed?

No idea. The driver has clearly been calling snd_sgbuf_aligned_pages()
since commit 0b708c87f66a ("ASoC: Intel: Fix Haswell/Broadwell DSP
page table creation.") back in 2014, and the helper function has been
unavailable since 2008. My best guess is that some other Kconfig option
enforced the dependency implicitly before.

       Arnd

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 13:04   ` [alsa-devel] " Arnd Bergmann
@ 2017-11-02 13:12     ` Arnd Bergmann
  2017-11-02 16:04         ` Vinod Koul
  0 siblings, 1 reply; 14+ messages in thread
From: Arnd Bergmann @ 2017-11-02 13:12 UTC (permalink / raw)
  To: Pierre-Louis Bossart
  Cc: Mark Brown, Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
	Vinod Koul, Andy Shevchenko, Harsha Priya N, Naveen M,
	alsa-devel, Linux Kernel Mailing List

On Thu, Nov 2, 2017 at 2:04 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
> <pierre-louis.bossart@linux.intel.com> wrote:
>> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
>>>
>>> I ran into multiple problems during randconfig builds of the
>>> recently changed Kconfig logic for Intel ASoC drivers:
>>
>>
>> we did quite a bit of testing on this change, looks like we missed a number
>> of cases. Gah.
>>
>>>
>>> - Building without DMADEVICES doesn't work in general
>>
>>
>> the Intel audio hardware has its own DMA in general, be it based on
>> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
>> dependency is needed across the board?
>
> Probably my mistake. I'll try again without the dependency and see
> what problems I run into then and what the correct fix is.

I immediately ran into this Kconfig warning, so this is clearly for the two
users of SND_SOC_INTEL_SST_FIRMWARE:

warning: (SATA_DWC_OLD_DMA && SERIAL_8250_LPSS &&
SND_SOC_INTEL_SST_FIRMWARE) selects DW_DMAC_CORE which has unmet
direct dependencies (DMADEVICES)

I'm testing with this fixup now:

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index e18118209b75..89126fa3f846 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -20,7 +20,6 @@ config SND_SOC_INTEL_SST

 config SND_SOC_INTEL_SST_FIRMWARE
        tristate
-       select DW_DMAC_CORE

 config SND_SOC_INTEL_SST_ACPI
        tristate
@@ -32,19 +31,20 @@ config SND_SOC_ACPI_INTEL_MATCH
 config SND_SOC_INTEL_SST_TOPLEVEL
        tristate "Intel ASoC SST drivers"
        depends on X86 || COMPILE_TEST
-       depends on DMADEVICES
        select SND_SOC_INTEL_MACH
        select SND_SOC_INTEL_COMMON

 config SND_SOC_INTEL_HASWELL
        tristate "Intel ASoC SST driver for Haswell/Broadwell"
        depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
+       depends on DMADEVICES
        select SND_SOC_INTEL_SST
        select SND_SOC_INTEL_SST_FIRMWARE

 config SND_SOC_INTEL_BAYTRAIL
        tristate "Intel ASoC SST driver for Baytrail (legacy)"
        depends on SND_SOC_INTEL_SST_TOPLEVEL
+       depends on DMADEVICES
        select SND_SOC_INTEL_SST
        select SND_SOC_INTEL_SST_FIRMWARE

diff --git a/sound/soc/intel/boards/Kconfig b/sound/soc/intel/boards/Kconfig
index 449bc8baaa60..5063f15b4ca4 100644
--- a/sound/soc/intel/boards/Kconfig
+++ b/sound/soc/intel/boards/Kconfig
@@ -19,7 +19,6 @@ config SND_SOC_INTEL_HASWELL_MACH
        tristate "ASoC Audio DSP support for Intel Haswell Lynxpoint"
        depends on SND_SOC_INTEL_MACH
        depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
-       depends on DMADEVICES
        depends on SND_SOC_INTEL_HASWELL
        select SND_SOC_RT5640
        help
@@ -32,7 +31,6 @@ config SND_SOC_INTEL_BDW_RT5677_MACH
        tristate "ASoC Audio driver for Intel Broadwell with RT5677 codec"
        depends on SND_SOC_INTEL_MACH
        depends on X86_INTEL_LPSS && GPIOLIB && I2C
-       depends on DMADEVICES
        depends on SND_SOC_INTEL_HASWELL
        select SND_SOC_RT5677
        help
@@ -43,7 +41,6 @@ config SND_SOC_INTEL_BROADWELL_MACH
        tristate "ASoC Audio DSP support for Intel Broadwell Wildcatpoint"
        depends on SND_SOC_INTEL_MACH
        depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
-       depends on DMADEVICES
        depends on SND_SOC_INTEL_HASWELL
        select SND_SOC_RT286
        help
@@ -56,7 +53,6 @@ config SND_SOC_INTEL_BYT_MAX98090_MACH
        tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec"
        depends on SND_SOC_INTEL_MACH
        depends on X86_INTEL_LPSS && I2C
-       depends on DMADEVICES
        depends on SND_SST_IPC_ACPI = n
        depends on SND_SOC_INTEL_BAYTRAIL
        select SND_SOC_MAX98090
@@ -68,7 +64,6 @@ config SND_SOC_INTEL_BYT_RT5640_MACH
        tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec"
        depends on SND_SOC_INTEL_MACH
        depends on X86_INTEL_LPSS && I2C
-       depends on DMADEVICES
        depends on SND_SST_IPC_ACPI = n
        depends on SND_SOC_INTEL_BAYTRAIL
        select SND_SOC_RT5640

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 13:12     ` Arnd Bergmann
@ 2017-11-02 16:04         ` Vinod Koul
  0 siblings, 0 replies; 14+ messages in thread
From: Vinod Koul @ 2017-11-02 16:04 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Pierre-Louis Bossart, Mark Brown, Liam Girdwood, Jaroslav Kysela,
	Takashi Iwai, Andy Shevchenko, Harsha Priya N, Naveen M,
	alsa-devel, Linux Kernel Mailing List

On Thu, Nov 02, 2017 at 02:12:11PM +0100, Arnd Bergmann wrote:
> On Thu, Nov 2, 2017 at 2:04 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
> > <pierre-louis.bossart@linux.intel.com> wrote:
> >> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
> >>>
> >>> I ran into multiple problems during randconfig builds of the
> >>> recently changed Kconfig logic for Intel ASoC drivers:
> >>
> >>
> >> we did quite a bit of testing on this change, looks like we missed a number
> >> of cases. Gah.
> >>
> >>>
> >>> - Building without DMADEVICES doesn't work in general
> >>
> >>
> >> the Intel audio hardware has its own DMA in general, be it based on
> >> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
> >> dependency is needed across the board?
> >
> > Probably my mistake. I'll try again without the dependency and see
> > what problems I run into then and what the correct fix is.
> 
> I immediately ran into this Kconfig warning, so this is clearly for the two
> users of SND_SOC_INTEL_SST_FIRMWARE:
> 
> warning: (SATA_DWC_OLD_DMA && SERIAL_8250_LPSS &&
> SND_SOC_INTEL_SST_FIRMWARE) selects DW_DMAC_CORE which has unmet
> direct dependencies (DMADEVICES)

The BYT legacy drivers used DMAengine (dw) to load the firmware and hence the
dependency. The Skylake and other drivers do not need that, so we should
move this from toplevel to the BYT driver only.

> 
> I'm testing with this fixup now:
> 
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index e18118209b75..89126fa3f846 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -20,7 +20,6 @@ config SND_SOC_INTEL_SST
> 
>  config SND_SOC_INTEL_SST_FIRMWARE
>         tristate
> -       select DW_DMAC_CORE

this is required as we need this DMA driver. It might not have issues on
compile but functionality would be broken.

>  config SND_SOC_INTEL_SST_ACPI
>         tristate
> @@ -32,19 +31,20 @@ config SND_SOC_ACPI_INTEL_MATCH
>  config SND_SOC_INTEL_SST_TOPLEVEL
>         tristate "Intel ASoC SST drivers"
>         depends on X86 || COMPILE_TEST
> -       depends on DMADEVICES

This is fine

>         select SND_SOC_INTEL_MACH
>         select SND_SOC_INTEL_COMMON
> 
>  config SND_SOC_INTEL_HASWELL
>         tristate "Intel ASoC SST driver for Haswell/Broadwell"
>         depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
> +       depends on DMADEVICES

yes this and below seems right fix to me.

>         select SND_SOC_INTEL_SST
>         select SND_SOC_INTEL_SST_FIRMWARE
> 
>  config SND_SOC_INTEL_BAYTRAIL
>         tristate "Intel ASoC SST driver for Baytrail (legacy)"
>         depends on SND_SOC_INTEL_SST_TOPLEVEL
> +       depends on DMADEVICES
>         select SND_SOC_INTEL_SST
>         select SND_SOC_INTEL_SST_FIRMWARE
> 
> diff --git a/sound/soc/intel/boards/Kconfig b/sound/soc/intel/boards/Kconfig
> index 449bc8baaa60..5063f15b4ca4 100644
> --- a/sound/soc/intel/boards/Kconfig
> +++ b/sound/soc/intel/boards/Kconfig
> @@ -19,7 +19,6 @@ config SND_SOC_INTEL_HASWELL_MACH
>         tristate "ASoC Audio DSP support for Intel Haswell Lynxpoint"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT5640
>         help
> @@ -32,7 +31,6 @@ config SND_SOC_INTEL_BDW_RT5677_MACH
>         tristate "ASoC Audio driver for Intel Broadwell with RT5677 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && GPIOLIB && I2C
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT5677
>         help
> @@ -43,7 +41,6 @@ config SND_SOC_INTEL_BROADWELL_MACH
>         tristate "ASoC Audio DSP support for Intel Broadwell Wildcatpoint"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT286
>         help
> @@ -56,7 +53,6 @@ config SND_SOC_INTEL_BYT_MAX98090_MACH
>         tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C
> -       depends on DMADEVICES
>         depends on SND_SST_IPC_ACPI = n
>         depends on SND_SOC_INTEL_BAYTRAIL
>         select SND_SOC_MAX98090
> @@ -68,7 +64,6 @@ config SND_SOC_INTEL_BYT_RT5640_MACH
>         tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C
> -       depends on DMADEVICES
>         depends on SND_SST_IPC_ACPI = n
>         depends on SND_SOC_INTEL_BAYTRAIL
>         select SND_SOC_RT5640

-- 
~Vinod

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] ASoC: Intel: fix Kconfig dependencies
@ 2017-11-02 16:04         ` Vinod Koul
  0 siblings, 0 replies; 14+ messages in thread
From: Vinod Koul @ 2017-11-02 16:04 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Pierre-Louis Bossart, alsa-devel, Liam Girdwood, Harsha Priya N,
	Linux Kernel Mailing List, Takashi Iwai, Mark Brown, Naveen M,
	Andy Shevchenko

On Thu, Nov 02, 2017 at 02:12:11PM +0100, Arnd Bergmann wrote:
> On Thu, Nov 2, 2017 at 2:04 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> > On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
> > <pierre-louis.bossart@linux.intel.com> wrote:
> >> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
> >>>
> >>> I ran into multiple problems during randconfig builds of the
> >>> recently changed Kconfig logic for Intel ASoC drivers:
> >>
> >>
> >> we did quite a bit of testing on this change, looks like we missed a number
> >> of cases. Gah.
> >>
> >>>
> >>> - Building without DMADEVICES doesn't work in general
> >>
> >>
> >> the Intel audio hardware has its own DMA in general, be it based on
> >> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
> >> dependency is needed across the board?
> >
> > Probably my mistake. I'll try again without the dependency and see
> > what problems I run into then and what the correct fix is.
> 
> I immediately ran into this Kconfig warning, so this is clearly for the two
> users of SND_SOC_INTEL_SST_FIRMWARE:
> 
> warning: (SATA_DWC_OLD_DMA && SERIAL_8250_LPSS &&
> SND_SOC_INTEL_SST_FIRMWARE) selects DW_DMAC_CORE which has unmet
> direct dependencies (DMADEVICES)

The BYT legacy drivers used DMAengine (dw) to load the firmware and hence the
dependency. The Skylake and other drivers do not need that, so we should
move this from toplevel to the BYT driver only.

> 
> I'm testing with this fixup now:
> 
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index e18118209b75..89126fa3f846 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -20,7 +20,6 @@ config SND_SOC_INTEL_SST
> 
>  config SND_SOC_INTEL_SST_FIRMWARE
>         tristate
> -       select DW_DMAC_CORE

this is required as we need this DMA driver. It might not have issues on
compile but functionality would be broken.

>  config SND_SOC_INTEL_SST_ACPI
>         tristate
> @@ -32,19 +31,20 @@ config SND_SOC_ACPI_INTEL_MATCH
>  config SND_SOC_INTEL_SST_TOPLEVEL
>         tristate "Intel ASoC SST drivers"
>         depends on X86 || COMPILE_TEST
> -       depends on DMADEVICES

This is fine

>         select SND_SOC_INTEL_MACH
>         select SND_SOC_INTEL_COMMON
> 
>  config SND_SOC_INTEL_HASWELL
>         tristate "Intel ASoC SST driver for Haswell/Broadwell"
>         depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
> +       depends on DMADEVICES

yes this and below seems right fix to me.

>         select SND_SOC_INTEL_SST
>         select SND_SOC_INTEL_SST_FIRMWARE
> 
>  config SND_SOC_INTEL_BAYTRAIL
>         tristate "Intel ASoC SST driver for Baytrail (legacy)"
>         depends on SND_SOC_INTEL_SST_TOPLEVEL
> +       depends on DMADEVICES
>         select SND_SOC_INTEL_SST
>         select SND_SOC_INTEL_SST_FIRMWARE
> 
> diff --git a/sound/soc/intel/boards/Kconfig b/sound/soc/intel/boards/Kconfig
> index 449bc8baaa60..5063f15b4ca4 100644
> --- a/sound/soc/intel/boards/Kconfig
> +++ b/sound/soc/intel/boards/Kconfig
> @@ -19,7 +19,6 @@ config SND_SOC_INTEL_HASWELL_MACH
>         tristate "ASoC Audio DSP support for Intel Haswell Lynxpoint"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT5640
>         help
> @@ -32,7 +31,6 @@ config SND_SOC_INTEL_BDW_RT5677_MACH
>         tristate "ASoC Audio driver for Intel Broadwell with RT5677 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && GPIOLIB && I2C
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT5677
>         help
> @@ -43,7 +41,6 @@ config SND_SOC_INTEL_BROADWELL_MACH
>         tristate "ASoC Audio DSP support for Intel Broadwell Wildcatpoint"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
> -       depends on DMADEVICES
>         depends on SND_SOC_INTEL_HASWELL
>         select SND_SOC_RT286
>         help
> @@ -56,7 +53,6 @@ config SND_SOC_INTEL_BYT_MAX98090_MACH
>         tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C
> -       depends on DMADEVICES
>         depends on SND_SST_IPC_ACPI = n
>         depends on SND_SOC_INTEL_BAYTRAIL
>         select SND_SOC_MAX98090
> @@ -68,7 +64,6 @@ config SND_SOC_INTEL_BYT_RT5640_MACH
>         tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec"
>         depends on SND_SOC_INTEL_MACH
>         depends on X86_INTEL_LPSS && I2C
> -       depends on DMADEVICES
>         depends on SND_SST_IPC_ACPI = n
>         depends on SND_SOC_INTEL_BAYTRAIL
>         select SND_SOC_RT5640

-- 
~Vinod

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 16:04         ` Vinod Koul
  (?)
@ 2017-11-02 16:25         ` Arnd Bergmann
  2017-11-02 16:32           ` Vinod Koul
  -1 siblings, 1 reply; 14+ messages in thread
From: Arnd Bergmann @ 2017-11-02 16:25 UTC (permalink / raw)
  To: Vinod Koul
  Cc: Pierre-Louis Bossart, Mark Brown, Liam Girdwood, Jaroslav Kysela,
	Takashi Iwai, Andy Shevchenko, Harsha Priya N, Naveen M,
	alsa-devel, Linux Kernel Mailing List

On Thu, Nov 2, 2017 at 5:04 PM, Vinod Koul <vinod.koul@intel.com> wrote:
> On Thu, Nov 02, 2017 at 02:12:11PM +0100, Arnd Bergmann wrote:
>> On Thu, Nov 2, 2017 at 2:04 PM, Arnd Bergmann <arnd@arndb.de> wrote:
>> > On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
>> > <pierre-louis.bossart@linux.intel.com> wrote:
>> >> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
>> >>>
>> >>> I ran into multiple problems during randconfig builds of the
>> >>> recently changed Kconfig logic for Intel ASoC drivers:
>> >>
>> >>
>> >> we did quite a bit of testing on this change, looks like we missed a number
>> >> of cases. Gah.
>> >>
>> >>>
>> >>> - Building without DMADEVICES doesn't work in general
>> >>
>> >>
>> >> the Intel audio hardware has its own DMA in general, be it based on
>> >> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
>> >> dependency is needed across the board?
>> >
>> > Probably my mistake. I'll try again without the dependency and see
>> > what problems I run into then and what the correct fix is.
>>
>> I immediately ran into this Kconfig warning, so this is clearly for the two
>> users of SND_SOC_INTEL_SST_FIRMWARE:
>>
>> warning: (SATA_DWC_OLD_DMA && SERIAL_8250_LPSS &&
>> SND_SOC_INTEL_SST_FIRMWARE) selects DW_DMAC_CORE which has unmet
>> direct dependencies (DMADEVICES)
>
> The BYT legacy drivers used DMAengine (dw) to load the firmware and hence the
> dependency. The Skylake and other drivers do not need that, so we should
> move this from toplevel to the BYT driver only.

Ok, so Haswell also shouldn't select SND_SOC_INTEL_SST_FIRMWARE, right?

>>  config SND_SOC_INTEL_SST_FIRMWARE
>>         tristate
>> -       select DW_DMAC_CORE
>
> this is required as we need this DMA driver. It might not have issues on
> compile but functionality would be broken.

It's also broken at compile time, I just ran into that.

>>  config SND_SOC_INTEL_SST_ACPI
>>         tristate
>> @@ -32,19 +31,20 @@ config SND_SOC_ACPI_INTEL_MATCH
>>  config SND_SOC_INTEL_SST_TOPLEVEL
>>         tristate "Intel ASoC SST drivers"
>>         depends on X86 || COMPILE_TEST
>> -       depends on DMADEVICES
>
> This is fine
>
>>         select SND_SOC_INTEL_MACH
>>         select SND_SOC_INTEL_COMMON
>>
>>  config SND_SOC_INTEL_HASWELL
>>         tristate "Intel ASoC SST driver for Haswell/Broadwell"
>>         depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
>> +       depends on DMADEVICES
>
> yes this and below seems right fix to me.

Ok, thanks for taking a look! I'll let the randconfig builder chew on this
overnight, and send a new version tomorrow.

     Arnd

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 16:25         ` [alsa-devel] " Arnd Bergmann
@ 2017-11-02 16:32           ` Vinod Koul
  2017-11-02 20:25               ` Liam Girdwood
  0 siblings, 1 reply; 14+ messages in thread
From: Vinod Koul @ 2017-11-02 16:32 UTC (permalink / raw)
  To: Arnd Bergmann, Liam Girdwood
  Cc: Pierre-Louis Bossart, Mark Brown, Liam Girdwood, Jaroslav Kysela,
	Takashi Iwai, Andy Shevchenko, Harsha Priya N, Naveen M,
	alsa-devel, Linux Kernel Mailing List

On Thu, Nov 02, 2017 at 05:25:01PM +0100, Arnd Bergmann wrote:
> On Thu, Nov 2, 2017 at 5:04 PM, Vinod Koul <vinod.koul@intel.com> wrote:
> > On Thu, Nov 02, 2017 at 02:12:11PM +0100, Arnd Bergmann wrote:
> >> On Thu, Nov 2, 2017 at 2:04 PM, Arnd Bergmann <arnd@arndb.de> wrote:
> >> > On Thu, Nov 2, 2017 at 1:43 PM, Pierre-Louis Bossart
> >> > <pierre-louis.bossart@linux.intel.com> wrote:
> >> >> On 11/2/17 6:07 AM, Arnd Bergmann wrote:
> >> >>>
> >> >>> I ran into multiple problems during randconfig builds of the
> >> >>> recently changed Kconfig logic for Intel ASoC drivers:
> >> >>
> >> >>
> >> >> we did quite a bit of testing on this change, looks like we missed a number
> >> >> of cases. Gah.
> >> >>
> >> >>>
> >> >>> - Building without DMADEVICES doesn't work in general
> >> >>
> >> >>
> >> >> the Intel audio hardware has its own DMA in general, be it based on
> >> >> DesignWare controlled by audio firmware or HDaudio, not sure if/why this
> >> >> dependency is needed across the board?
> >> >
> >> > Probably my mistake. I'll try again without the dependency and see
> >> > what problems I run into then and what the correct fix is.
> >>
> >> I immediately ran into this Kconfig warning, so this is clearly for the two
> >> users of SND_SOC_INTEL_SST_FIRMWARE:
> >>
> >> warning: (SATA_DWC_OLD_DMA && SERIAL_8250_LPSS &&
> >> SND_SOC_INTEL_SST_FIRMWARE) selects DW_DMAC_CORE which has unmet
> >> direct dependencies (DMADEVICES)
> >
> > The BYT legacy drivers used DMAengine (dw) to load the firmware and hence the
> > dependency. The Skylake and other drivers do not need that, so we should
> > move this from toplevel to the BYT driver only.
> 
> Ok, so Haswell also shouldn't select SND_SOC_INTEL_SST_FIRMWARE, right?

I am not sure on that. Liam?

> 
> >>  config SND_SOC_INTEL_SST_FIRMWARE
> >>         tristate
> >> -       select DW_DMAC_CORE
> >
> > this is required as we need this DMA driver. It might not have issues on
> > compile but functionality would be broken.
> 
> It's also broken at compile time, I just ran into that.

okay better then :)

> >>  config SND_SOC_INTEL_SST_ACPI
> >>         tristate
> >> @@ -32,19 +31,20 @@ config SND_SOC_ACPI_INTEL_MATCH
> >>  config SND_SOC_INTEL_SST_TOPLEVEL
> >>         tristate "Intel ASoC SST drivers"
> >>         depends on X86 || COMPILE_TEST
> >> -       depends on DMADEVICES
> >
> > This is fine
> >
> >>         select SND_SOC_INTEL_MACH
> >>         select SND_SOC_INTEL_COMMON
> >>
> >>  config SND_SOC_INTEL_HASWELL
> >>         tristate "Intel ASoC SST driver for Haswell/Broadwell"
> >>         depends on SND_SOC_INTEL_SST_TOPLEVEL && SND_DMA_SGBUF
> >> +       depends on DMADEVICES
> >
> > yes this and below seems right fix to me.
> 
> Ok, thanks for taking a look! I'll let the randconfig builder chew on this
> overnight, and send a new version tomorrow.

Sounds good to me

-- 
~Vinod

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies
  2017-11-02 16:32           ` Vinod Koul
@ 2017-11-02 20:25               ` Liam Girdwood
  0 siblings, 0 replies; 14+ messages in thread
From: Liam Girdwood @ 2017-11-02 20:25 UTC (permalink / raw)
  To: Vinod Koul
  Cc: Arnd Bergmann, Pierre-Louis Bossart, alsa-devel, Liam Girdwood,
	Harsha Priya N, Linux Kernel Mailing List, Takashi Iwai,
	Mark Brown, Naveen M, Andy Shevchenko

On Thu, 2017-11-02 at 22:02 +0530, Vinod Koul wrote:
> > > The BYT legacy drivers used DMAengine (dw) to load the firmware
> and hence the
> > > dependency. The Skylake and other drivers do not need that, so we
> should
> > > move this from toplevel to the BYT driver only.
> > 
> > Ok, so Haswell also shouldn't select SND_SOC_INTEL_SST_FIRMWARE,
> right?
> 
> I am not sure on that. Liam?

Haswell and Broadwell also use the DW DMAC for FW loading like the BYT
legacy driver.

Liam

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] ASoC: Intel: fix Kconfig dependencies
@ 2017-11-02 20:25               ` Liam Girdwood
  0 siblings, 0 replies; 14+ messages in thread
From: Liam Girdwood @ 2017-11-02 20:25 UTC (permalink / raw)
  To: Vinod Koul
  Cc: alsa-devel, Arnd Bergmann, Liam Girdwood, Harsha Priya N,
	Takashi Iwai, Linux Kernel Mailing List, Pierre-Louis Bossart,
	Mark Brown, Naveen M, Andy Shevchenko

On Thu, 2017-11-02 at 22:02 +0530, Vinod Koul wrote:
> > > The BYT legacy drivers used DMAengine (dw) to load the firmware
> and hence the
> > > dependency. The Skylake and other drivers do not need that, so we
> should
> > > move this from toplevel to the BYT driver only.
> > 
> > Ok, so Haswell also shouldn't select SND_SOC_INTEL_SST_FIRMWARE,
> right?
> 
> I am not sure on that. Liam?

Haswell and Broadwell also use the DW DMAC for FW loading like the BYT
legacy driver.

Liam

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2017-11-02 20:25 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-02 11:07 [PATCH] ASoC: Intel: fix Kconfig dependencies Arnd Bergmann
2017-11-02 11:07 ` Arnd Bergmann
2017-11-02 11:21 ` Applied "ASoC: Intel: fix Kconfig dependencies" to the asoc tree Mark Brown
2017-11-02 11:21   ` Mark Brown
2017-11-02 12:43 ` [alsa-devel] [PATCH] ASoC: Intel: fix Kconfig dependencies Pierre-Louis Bossart
2017-11-02 12:43   ` Pierre-Louis Bossart
2017-11-02 13:04   ` [alsa-devel] " Arnd Bergmann
2017-11-02 13:12     ` Arnd Bergmann
2017-11-02 16:04       ` Vinod Koul
2017-11-02 16:04         ` Vinod Koul
2017-11-02 16:25         ` [alsa-devel] " Arnd Bergmann
2017-11-02 16:32           ` Vinod Koul
2017-11-02 20:25             ` Liam Girdwood
2017-11-02 20:25               ` Liam Girdwood

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.