[alsa-devel] [PATCH 0/6] ASoC: Intel: fix kconfig, symbols and sparse
So this series has two parts part 1, first three patches which fix the issue of BYT driver not getting compiled in -next and then cleans up symbol usage in various driver Second part fixes (next three) spare warnings on drivers
Vinod Koul (6): ASoC: Intel: use CONFIG_SND_SOC for intel boards ASoC: Intel: kconfig - Move DW_DMAC_CORE dependency to machines ASoC: intel - kconfig: remove SND_SOC_INTEL_SST prompt ASOC: intel - hsw: fix sparse unused varible warn ASoC: intel - atom: statify sst_slot_enum_info ASoC: Intel -atom: fix sst_platform_compr_ops declaration
sound/soc/intel/Kconfig | 24 +++++++++++++----------- sound/soc/intel/Makefile | 2 +- sound/soc/intel/atom/sst-atom-controls.c | 2 +- sound/soc/intel/atom/sst-mfld-platform-pcm.c | 1 - sound/soc/intel/atom/sst-mfld-platform.h | 1 + sound/soc/intel/haswell/sst-haswell-pcm.c | 1 - 6 files changed, 16 insertions(+), 15 deletions(-)
The Intel boards directory was under CONFIG_SND_SOC_INTEL_SST so the machines which don't need these were not allowed to be selected/compiled without enabling this symbol The machine should be allowed to selected by ASoC and then they should select rest of symbols required
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/intel/Makefile b/sound/soc/intel/Makefile index 3853ec2ddbc7..6de5d5cd3280 100644 --- a/sound/soc/intel/Makefile +++ b/sound/soc/intel/Makefile @@ -7,4 +7,4 @@ obj-$(CONFIG_SND_SOC_INTEL_BAYTRAIL) += baytrail/ obj-$(CONFIG_SND_SST_MFLD_PLATFORM) += atom/
# Machine support -obj-$(CONFIG_SND_SOC_INTEL_SST) += boards/ +obj-$(CONFIG_SND_SOC) += boards/
On Fri, Jun 19, 2015 at 11:55:26PM +0530, Vinod Koul wrote:
The Intel boards directory was under CONFIG_SND_SOC_INTEL_SST so the machines which don't need these were not allowed to be selected/compiled without enabling this symbol The machine should be allowed to selected by ASoC and then they should select rest of symbols required
Signed-off-by: Vinod Koul vinod.koul@intel.com
And this should also have:
Reported-by: Michele Curti michele.curti@gmail.com
Sorry Michele, missed adding your earlier
Some HSW and BYT machines depend on the DW_DMAC_CORE so they should have have depends on this symbol rather than common IPC lib as SKL onwards IPC lib is used but we don't depend on DW_DMAC_CORE
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/Kconfig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig index f3060a4ca040..6f9a54af9c64 100644 --- a/sound/soc/intel/Kconfig +++ b/sound/soc/intel/Kconfig @@ -29,7 +29,6 @@ config SND_SOC_INTEL_SST tristate "ASoC support for Intel(R) Smart Sound Technology" select SND_SOC_INTEL_SST_ACPI if ACPI depends on (X86 || COMPILE_TEST) - depends on DW_DMAC_CORE help This adds support for Intel(R) Smart Sound Technology (SST). Say Y if you have such a device @@ -48,6 +47,7 @@ config SND_SOC_INTEL_HASWELL_MACH tristate "ASoC Audio DSP support for Intel Haswell Lynxpoint" depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C && \ I2C_DESIGNWARE_PLATFORM + depends on DW_DMAC_CORE select SND_SOC_INTEL_HASWELL select SND_SOC_RT5640 help @@ -59,6 +59,7 @@ config SND_SOC_INTEL_HASWELL_MACH config SND_SOC_INTEL_BYT_RT5640_MACH tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec" depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C + depends on DW_DMAC_CORE select SND_SOC_INTEL_BAYTRAIL select SND_SOC_RT5640 help @@ -68,6 +69,7 @@ config SND_SOC_INTEL_BYT_RT5640_MACH config SND_SOC_INTEL_BYT_MAX98090_MACH tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec" depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C + depends on DW_DMAC_CORE select SND_SOC_INTEL_BAYTRAIL select SND_SOC_MAX98090 help @@ -78,6 +80,7 @@ config SND_SOC_INTEL_BROADWELL_MACH tristate "ASoC Audio DSP support for Intel Broadwell Wildcatpoint" depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && DW_DMAC && \ I2C_DESIGNWARE_PLATFORM + depends on DW_DMAC_CORE select SND_SOC_INTEL_HASWELL select SND_SOC_RT286 help
The SND_SOC_INTEL_SST is for common IPC lib and this should ideally be not selectable symbol but selected by respective machine driver So remove the prompt and get respective machines select it
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/Kconfig | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig index 6f9a54af9c64..32262be80871 100644 --- a/sound/soc/intel/Kconfig +++ b/sound/soc/intel/Kconfig @@ -26,13 +26,9 @@ config SND_SST_IPC_ACPI depends on ACPI
config SND_SOC_INTEL_SST - tristate "ASoC support for Intel(R) Smart Sound Technology" + tristate select SND_SOC_INTEL_SST_ACPI if ACPI depends on (X86 || COMPILE_TEST) - help - This adds support for Intel(R) Smart Sound Technology (SST). - Say Y if you have such a device - If unsure select "N".
config SND_SOC_INTEL_SST_ACPI tristate @@ -45,9 +41,9 @@ config SND_SOC_INTEL_BAYTRAIL
config SND_SOC_INTEL_HASWELL_MACH tristate "ASoC Audio DSP support for Intel Haswell Lynxpoint" - depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C && \ - I2C_DESIGNWARE_PLATFORM + depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM depends on DW_DMAC_CORE + select SND_SOC_INTEL_SST select SND_SOC_INTEL_HASWELL select SND_SOC_RT5640 help @@ -58,8 +54,9 @@ config SND_SOC_INTEL_HASWELL_MACH
config SND_SOC_INTEL_BYT_RT5640_MACH tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec" - depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C + depends on X86_INTEL_LPSS && I2C depends on DW_DMAC_CORE + select SND_SOC_INTEL_SST select SND_SOC_INTEL_BAYTRAIL select SND_SOC_RT5640 help @@ -68,8 +65,9 @@ config SND_SOC_INTEL_BYT_RT5640_MACH
config SND_SOC_INTEL_BYT_MAX98090_MACH tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec" - depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && I2C + depends on X86_INTEL_LPSS && I2C depends on DW_DMAC_CORE + select SND_SOC_INTEL_SST select SND_SOC_INTEL_BAYTRAIL select SND_SOC_MAX98090 help @@ -78,9 +76,10 @@ config SND_SOC_INTEL_BYT_MAX98090_MACH
config SND_SOC_INTEL_BROADWELL_MACH tristate "ASoC Audio DSP support for Intel Broadwell Wildcatpoint" - depends on SND_SOC_INTEL_SST && X86_INTEL_LPSS && DW_DMAC && \ + depends on X86_INTEL_LPSS && I2C && DW_DMAC && \ I2C_DESIGNWARE_PLATFORM depends on DW_DMAC_CORE + select SND_SOC_INTEL_SST select SND_SOC_INTEL_HASWELL select SND_SOC_RT286 help
Sparse rightly complains that the variable hsw is not used so should be removed, so remove it
sound/soc/intel/haswell/sst-haswell-pcm.c: In function ‘hsw_pcm_prepare’: sound/soc/intel/haswell/sst-haswell-pcm.c:1349:18: warning: unused variable ‘hsw’ [-Wunused-variable] struct sst_hsw *hsw = pdata->hsw;
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/haswell/sst-haswell-pcm.c | 1 - 1 file changed, 1 deletion(-)
diff --git a/sound/soc/intel/haswell/sst-haswell-pcm.c b/sound/soc/intel/haswell/sst-haswell-pcm.c index e593e7a4b7a7..1aa819c7e09b 100644 --- a/sound/soc/intel/haswell/sst-haswell-pcm.c +++ b/sound/soc/intel/haswell/sst-haswell-pcm.c @@ -1346,7 +1346,6 @@ static void hsw_pcm_complete(struct device *dev) static int hsw_pcm_prepare(struct device *dev) { struct hsw_priv_data *pdata = dev_get_drvdata(dev); - struct sst_hsw *hsw = pdata->hsw; struct hsw_pcm_data *pcm_data; int i, err;
Sparse complains that sst_slot_enum_info should be static, so make it static
sound/soc/intel/atom/sst-atom-controls.c:135:5: warning: symbol 'sst_slot_enum_info' was not declared. Should it be static?
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/atom/sst-atom-controls.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/intel/atom/sst-atom-controls.c b/sound/soc/intel/atom/sst-atom-controls.c index 31e9b9ecbb8a..c95bc52dcd74 100644 --- a/sound/soc/intel/atom/sst-atom-controls.c +++ b/sound/soc/intel/atom/sst-atom-controls.c @@ -132,7 +132,7 @@ static int sst_send_slot_map(struct sst_data *drv) sizeof(cmd.header) + cmd.header.length); }
-int sst_slot_enum_info(struct snd_kcontrol *kcontrol, +static int sst_slot_enum_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo) { struct sst_enum *e = (struct sst_enum *)kcontrol->private_value;
Sparse complains that sst_platform_compr_ops should be static, but the declaration of this symbol was not correct so declare the symbol as extern in header file
sound/soc/intel/atom/sst-mfld-platform-compress.c:257:22: warning: symbol 'sst_platform_compr_ops' was not declared. Should it be static?
Signed-off-by: Vinod Koul vinod.koul@intel.com --- sound/soc/intel/atom/sst-mfld-platform-pcm.c | 1 - sound/soc/intel/atom/sst-mfld-platform.h | 1 + 2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/intel/atom/sst-mfld-platform-pcm.c b/sound/soc/intel/atom/sst-mfld-platform-pcm.c index 641ebe61dc08..683e50116152 100644 --- a/sound/soc/intel/atom/sst-mfld-platform-pcm.c +++ b/sound/soc/intel/atom/sst-mfld-platform-pcm.c @@ -33,7 +33,6 @@
struct sst_device *sst; static DEFINE_MUTEX(sst_lock); -extern struct snd_compr_ops sst_platform_compr_ops;
int sst_register_dsp(struct sst_device *dev) { diff --git a/sound/soc/intel/atom/sst-mfld-platform.h b/sound/soc/intel/atom/sst-mfld-platform.h index 2409b23eeacf..cb32cc7e5ec1 100644 --- a/sound/soc/intel/atom/sst-mfld-platform.h +++ b/sound/soc/intel/atom/sst-mfld-platform.h @@ -25,6 +25,7 @@ #include "sst-atom-controls.h"
extern struct sst_device *sst; +extern struct snd_compr_ops sst_platform_compr_ops;
#define SST_MONO 1 #define SST_STEREO 2
On Fri, 2015-06-19 at 23:55 +0530, Vinod Koul wrote:
So this series has two parts part 1, first three patches which fix the issue of BYT driver not getting compiled in -next and then cleans up symbol usage in various driver Second part fixes (next three) spare warnings on drivers
Vinod Koul (6): ASoC: Intel: use CONFIG_SND_SOC for intel boards ASoC: Intel: kconfig - Move DW_DMAC_CORE dependency to machines ASoC: intel - kconfig: remove SND_SOC_INTEL_SST prompt ASOC: intel - hsw: fix sparse unused varible warn ASoC: intel - atom: statify sst_slot_enum_info ASoC: Intel -atom: fix sst_platform_compr_ops declaration
sound/soc/intel/Kconfig | 24 +++++++++++++----------- sound/soc/intel/Makefile | 2 +- sound/soc/intel/atom/sst-atom-controls.c | 2 +- sound/soc/intel/atom/sst-mfld-platform-pcm.c | 1 - sound/soc/intel/atom/sst-mfld-platform.h | 1 + sound/soc/intel/haswell/sst-haswell-pcm.c | 1 - 6 files changed, 16 insertions(+), 15 deletions(-)
Acked-by: Liam Girdwood liam.r.girdwood@linux.intel.com
On Fri, Jun 19, 2015 at 11:55:25PM +0530, Vinod Koul wrote:
Vinod Koul (6): ASoC: Intel: use CONFIG_SND_SOC for intel boards ASoC: Intel: kconfig - Move DW_DMAC_CORE dependency to machines ASoC: intel - kconfig: remove SND_SOC_INTEL_SST prompt ASOC: intel - hsw: fix sparse unused varible warn ASoC: intel - atom: statify sst_slot_enum_info ASoC: Intel -atom: fix sst_platform_compr_ops declaration
Please try to use commit message styles that are consistent with that for the subsystem, these aren't even consistent within the series :(
On Wed, Jul 08, 2015 at 07:24:23PM +0100, Mark Brown wrote:
On Fri, Jun 19, 2015 at 11:55:25PM +0530, Vinod Koul wrote:
Vinod Koul (6): ASoC: Intel: use CONFIG_SND_SOC for intel boards ASoC: Intel: kconfig - Move DW_DMAC_CORE dependency to machines ASoC: intel - kconfig: remove SND_SOC_INTEL_SST prompt ASOC: intel - hsw: fix sparse unused varible warn ASoC: intel - atom: statify sst_slot_enum_info ASoC: Intel -atom: fix sst_platform_compr_ops declaration
Please try to use commit message styles that are consistent with that for the subsystem, these aren't even consistent within the series :(
Sorry about that, will repost with these fixed
On Thu, Jul 09, 2015 at 10:10:22AM +0530, Vinod Koul wrote:
On Wed, Jul 08, 2015 at 07:24:23PM +0100, Mark Brown wrote:
On Fri, Jun 19, 2015 at 11:55:25PM +0530, Vinod Koul wrote:
Vinod Koul (6): ASoC: Intel: use CONFIG_SND_SOC for intel boards ASoC: Intel: kconfig - Move DW_DMAC_CORE dependency to machines ASoC: intel - kconfig: remove SND_SOC_INTEL_SST prompt ASOC: intel - hsw: fix sparse unused varible warn ASoC: intel - atom: statify sst_slot_enum_info ASoC: Intel -atom: fix sst_platform_compr_ops declaration
Please try to use commit message styles that are consistent with that for the subsystem, these aren't even consistent within the series :(
Sorry about that, will repost with these fixed
And you have applied this, Thanks a bunch. I will be extra careful on this :) Which also means either you have turned off your applied scripts or it borke
On Thu, Jul 09, 2015 at 10:17:03AM +0530, Vinod Koul wrote:
On Thu, Jul 09, 2015 at 10:10:22AM +0530, Vinod Koul wrote:
Please try to use commit message styles that are consistent with that for the subsystem, these aren't even consistent within the series :(
Sorry about that, will repost with these fixed
And you have applied this, Thanks a bunch. I will be extra careful on this :) Which also means either you have turned off your applied scripts or it borke
No, it means I had to fix them up by hand.
On Thu, Jul 09, 2015 at 09:28:58AM +0100, Mark Brown wrote:
On Thu, Jul 09, 2015 at 10:17:03AM +0530, Vinod Koul wrote:
On Thu, Jul 09, 2015 at 10:10:22AM +0530, Vinod Koul wrote:
Please try to use commit message styles that are consistent with that for the subsystem, these aren't even consistent within the series :(
Sorry about that, will repost with these fixed
And you have applied this, Thanks a bunch. I will be extra careful on this :) Which also means either you have turned off your applied scripts or it borke
No, it means I had to fix them up by hand.
Thanks a bunch :)
participants (3)
-
Liam Girdwood
-
Mark Brown
-
Vinod Koul