diff mbox series

ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64

Message ID 9019c87f-cf1a-b59f-d87e-8169b247cf88@infradead.org (mailing list archive)
State New, archived
Headers show
Series ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64 | expand

Commit Message

Randy Dunlap May 23, 2019, 3:58 a.m. UTC
From: Randy Dunlap <rdunlap@infradead.org>

skl-ssp-clk.c does not build on IA64 because the driver
uses the common clock interface, so make the driver depend
on COMMON_CLK.

Fixes this build error:
../sound/soc/intel/skylake/skl-ssp-clk.c:26:16: error: field 'hw' has incomplete type
  struct clk_hw hw;
                ^~

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Mark Brown <broonie@kernel.org>
Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Cc: Jie Yang <yang.jie@linux.intel.com>
Cc: alsa-devel@alsa-project.org
---
 sound/soc/intel/Kconfig        |    3 ++-
 sound/soc/intel/boards/Kconfig |    2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

Comments

Pierre-Louis Bossart May 23, 2019, 11:28 a.m. UTC | #1
On 5/22/19 10:58 PM, Randy Dunlap wrote:
> From: Randy Dunlap <rdunlap@infradead.org>
> 
> skl-ssp-clk.c does not build on IA64 because the driver
> uses the common clock interface, so make the driver depend
> on COMMON_CLK.
> 
> Fixes this build error:
> ../sound/soc/intel/skylake/skl-ssp-clk.c:26:16: error: field 'hw' has incomplete type
>    struct clk_hw hw;
>                  ^~
> 
> Reported-by: kbuild test robot <lkp@intel.com>
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Cc: Mark Brown <broonie@kernel.org>
> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
> Cc: Liam Girdwood <liam.r.girdwood@linux.intel.com>
> Cc: Jie Yang <yang.jie@linux.intel.com>
> Cc: alsa-devel@alsa-project.org
> ---
>   sound/soc/intel/Kconfig        |    3 ++-
>   sound/soc/intel/boards/Kconfig |    2 +-
>   2 files changed, 3 insertions(+), 2 deletions(-)
> 
> --- lnx-52-rc1.orig/sound/soc/intel/Kconfig
> +++ lnx-52-rc1/sound/soc/intel/Kconfig
> @@ -104,7 +104,7 @@ config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
>   config SND_SOC_INTEL_SKYLAKE
>   	tristate "All Skylake/SST Platforms"
>   	depends on PCI && ACPI
> -	select SND_SOC_INTEL_SKL
> +	select SND_SOC_INTEL_SKL if COMMON_CLK

Is this really necessary? The COMMON_CLK is only needed for the 
SND_SOC_INTEL_SKYLAKE_SSP_CLK option, isn't it?

>   	select SND_SOC_INTEL_APL
>   	select SND_SOC_INTEL_KBL
>   	select SND_SOC_INTEL_GLK
> @@ -120,6 +120,7 @@ config SND_SOC_INTEL_SKYLAKE
>   config SND_SOC_INTEL_SKL
>   	tristate "Skylake Platforms"
>   	depends on PCI && ACPI
> +	depends on COMMON_CLK
>   	select SND_SOC_INTEL_SKYLAKE_FAMILY
>   	help
>   	  If you have a Intel Skylake platform with the DSP enabled
> --- lnx-52-rc1.orig/sound/soc/intel/boards/Kconfig
> +++ lnx-52-rc1/sound/soc/intel/boards/Kconfig
> @@ -286,7 +286,7 @@ config SND_SOC_INTEL_KBL_RT5663_MAX98927
>   	select SND_SOC_MAX98927
>   	select SND_SOC_DMIC
>   	select SND_SOC_HDAC_HDMI
> -	select SND_SOC_INTEL_SKYLAKE_SSP_CLK
> +	select SND_SOC_INTEL_SKYLAKE_SSP_CLK if COMMON_CLK

and here I would make it a depend. I guess your solution solves the 
compilation but doesn't fully represent the fact that this machine 
driver is not functional without COMMON_CLK+SKYLAKE_SSP_CLK.


>   	help
>   	  This adds support for ASoC Onboard Codec I2S machine driver. This will
>   	  create an alsa sound card for RT5663 + MAX98927.
> 
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel@alsa-project.org
> https://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>
Randy Dunlap May 24, 2019, 2:59 a.m. UTC | #2
On 5/23/19 4:28 AM, Pierre-Louis Bossart wrote:
> 
> 
> On 5/22/19 10:58 PM, Randy Dunlap wrote:
>> From: Randy Dunlap <rdunlap@infradead.org>
>>
>> skl-ssp-clk.c does not build on IA64 because the driver
>> uses the common clock interface, so make the driver depend
>> on COMMON_CLK.
>>
>> Fixes this build error:
>> ../sound/soc/intel/skylake/skl-ssp-clk.c:26:16: error: field 'hw' has incomplete type
>>    struct clk_hw hw;
>>                  ^~
>>
>> Reported-by: kbuild test robot <lkp@intel.com>
>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
>> Cc: Mark Brown <broonie@kernel.org>
>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>> Cc: Liam Girdwood <liam.r.girdwood@linux.intel.com>
>> Cc: Jie Yang <yang.jie@linux.intel.com>
>> Cc: alsa-devel@alsa-project.org
>> ---
>>   sound/soc/intel/Kconfig        |    3 ++-
>>   sound/soc/intel/boards/Kconfig |    2 +-
>>   2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> --- lnx-52-rc1.orig/sound/soc/intel/Kconfig
>> +++ lnx-52-rc1/sound/soc/intel/Kconfig
>> @@ -104,7 +104,7 @@ config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
>>   config SND_SOC_INTEL_SKYLAKE
>>       tristate "All Skylake/SST Platforms"
>>       depends on PCI && ACPI
>> -    select SND_SOC_INTEL_SKL
>> +    select SND_SOC_INTEL_SKL if COMMON_CLK
> 
> Is this really necessary? The COMMON_CLK is only needed for the SND_SOC_INTEL_SKYLAKE_SSP_CLK option, isn't it?

It prevents this Kconfig warning:

WARNING: unmet direct dependencies detected for SND_SOC_INTEL_SKL
  Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_SST_TOPLEVEL [=y] && PCI [=y] && ACPI [=y] && COMMON_CLK [=n]
  Selected by [y]:
  - SND_SOC_INTEL_SKYLAKE [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_SST_TOPLEVEL [=y] && PCI [=y] && ACPI [=y]


>>       select SND_SOC_INTEL_APL
>>       select SND_SOC_INTEL_KBL
>>       select SND_SOC_INTEL_GLK
>> @@ -120,6 +120,7 @@ config SND_SOC_INTEL_SKYLAKE
>>   config SND_SOC_INTEL_SKL
>>       tristate "Skylake Platforms"
>>       depends on PCI && ACPI
>> +    depends on COMMON_CLK
>>       select SND_SOC_INTEL_SKYLAKE_FAMILY
>>       help
>>         If you have a Intel Skylake platform with the DSP enabled
>> --- lnx-52-rc1.orig/sound/soc/intel/boards/Kconfig
>> +++ lnx-52-rc1/sound/soc/intel/boards/Kconfig
>> @@ -286,7 +286,7 @@ config SND_SOC_INTEL_KBL_RT5663_MAX98927
>>       select SND_SOC_MAX98927
>>       select SND_SOC_DMIC
>>       select SND_SOC_HDAC_HDMI
>> -    select SND_SOC_INTEL_SKYLAKE_SSP_CLK
>> +    select SND_SOC_INTEL_SKYLAKE_SSP_CLK if COMMON_CLK
> 
> and here I would make it a depend. I guess your solution solves the compilation but doesn't fully represent the fact that this machine driver is not functional without COMMON_CLK+SKYLAKE_SSP_CLK.

Not functional on ia64 anyway.  :)

> 
>>       help
>>         This adds support for ASoC Onboard Codec I2S machine driver. This will
>>         create an alsa sound card for RT5663 + MAX98927.


Thanks.
Pierre-Louis Bossart May 24, 2019, 1:03 p.m. UTC | #3
On 5/23/19 9:59 PM, Randy Dunlap wrote:
> On 5/23/19 4:28 AM, Pierre-Louis Bossart wrote:
>>
>>
>> On 5/22/19 10:58 PM, Randy Dunlap wrote:
>>> From: Randy Dunlap <rdunlap@infradead.org>
>>>
>>> skl-ssp-clk.c does not build on IA64 because the driver
>>> uses the common clock interface, so make the driver depend
>>> on COMMON_CLK.
>>>
>>> Fixes this build error:
>>> ../sound/soc/intel/skylake/skl-ssp-clk.c:26:16: error: field 'hw' has incomplete type
>>>     struct clk_hw hw;
>>>                   ^~
>>>
>>> Reported-by: kbuild test robot <lkp@intel.com>
>>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
>>> Cc: Mark Brown <broonie@kernel.org>
>>> Cc: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
>>> Cc: Liam Girdwood <liam.r.girdwood@linux.intel.com>
>>> Cc: Jie Yang <yang.jie@linux.intel.com>
>>> Cc: alsa-devel@alsa-project.org
>>> ---
>>>    sound/soc/intel/Kconfig        |    3 ++-
>>>    sound/soc/intel/boards/Kconfig |    2 +-
>>>    2 files changed, 3 insertions(+), 2 deletions(-)
>>>
>>> --- lnx-52-rc1.orig/sound/soc/intel/Kconfig
>>> +++ lnx-52-rc1/sound/soc/intel/Kconfig
>>> @@ -104,7 +104,7 @@ config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
>>>    config SND_SOC_INTEL_SKYLAKE
>>>        tristate "All Skylake/SST Platforms"
>>>        depends on PCI && ACPI
>>> -    select SND_SOC_INTEL_SKL
>>> +    select SND_SOC_INTEL_SKL if COMMON_CLK
>>
>> Is this really necessary? The COMMON_CLK is only needed for the SND_SOC_INTEL_SKYLAKE_SSP_CLK option, isn't it?
> 
> It prevents this Kconfig warning:
> 
> WARNING: unmet direct dependencies detected for SND_SOC_INTEL_SKL
>    Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_SST_TOPLEVEL [=y] && PCI [=y] && ACPI [=y] && COMMON_CLK [=n]
>    Selected by [y]:
>    - SND_SOC_INTEL_SKYLAKE [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_INTEL_SST_TOPLEVEL [=y] && PCI [=y] && ACPI [=y]

Humm, ok. Can you share the config? I'd like to look into this. There 
may be a need for this COMMON_CLK, but applying it here would not be 
fully correct: you can unselect SND_SOC_INTEL_SKYLAKE and only select 
SND_SOC_INTEL_SKL and still have the same problem.

> 
>>>        select SND_SOC_INTEL_APL
>>>        select SND_SOC_INTEL_KBL
>>>        select SND_SOC_INTEL_GLK
>>> @@ -120,6 +120,7 @@ config SND_SOC_INTEL_SKYLAKE
>>>    config SND_SOC_INTEL_SKL
>>>        tristate "Skylake Platforms"
>>>        depends on PCI && ACPI
>>> +    depends on COMMON_CLK
>>>        select SND_SOC_INTEL_SKYLAKE_FAMILY
>>>        help
>>>          If you have a Intel Skylake platform with the DSP enabled
>>> --- lnx-52-rc1.orig/sound/soc/intel/boards/Kconfig
>>> +++ lnx-52-rc1/sound/soc/intel/boards/Kconfig
>>> @@ -286,7 +286,7 @@ config SND_SOC_INTEL_KBL_RT5663_MAX98927
>>>        select SND_SOC_MAX98927
>>>        select SND_SOC_DMIC
>>>        select SND_SOC_HDAC_HDMI
>>> -    select SND_SOC_INTEL_SKYLAKE_SSP_CLK
>>> +    select SND_SOC_INTEL_SKYLAKE_SSP_CLK if COMMON_CLK
>>
>> and here I would make it a depend. I guess your solution solves the compilation but doesn't fully represent the fact that this machine driver is not functional without COMMON_CLK+SKYLAKE_SSP_CLK.
> 
> Not functional on ia64 anyway.  :)

Yeah, I am fine with this.
diff mbox series

Patch

--- lnx-52-rc1.orig/sound/soc/intel/Kconfig
+++ lnx-52-rc1/sound/soc/intel/Kconfig
@@ -104,7 +104,7 @@  config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
 config SND_SOC_INTEL_SKYLAKE
 	tristate "All Skylake/SST Platforms"
 	depends on PCI && ACPI
-	select SND_SOC_INTEL_SKL
+	select SND_SOC_INTEL_SKL if COMMON_CLK
 	select SND_SOC_INTEL_APL
 	select SND_SOC_INTEL_KBL
 	select SND_SOC_INTEL_GLK
@@ -120,6 +120,7 @@  config SND_SOC_INTEL_SKYLAKE
 config SND_SOC_INTEL_SKL
 	tristate "Skylake Platforms"
 	depends on PCI && ACPI
+	depends on COMMON_CLK
 	select SND_SOC_INTEL_SKYLAKE_FAMILY
 	help
 	  If you have a Intel Skylake platform with the DSP enabled
--- lnx-52-rc1.orig/sound/soc/intel/boards/Kconfig
+++ lnx-52-rc1/sound/soc/intel/boards/Kconfig
@@ -286,7 +286,7 @@  config SND_SOC_INTEL_KBL_RT5663_MAX98927
 	select SND_SOC_MAX98927
 	select SND_SOC_DMIC
 	select SND_SOC_HDAC_HDMI
-	select SND_SOC_INTEL_SKYLAKE_SSP_CLK
+	select SND_SOC_INTEL_SKYLAKE_SSP_CLK if COMMON_CLK
 	help
 	  This adds support for ASoC Onboard Codec I2S machine driver. This will
 	  create an alsa sound card for RT5663 + MAX98927.