Commit 56437a56 authored by Vijendar Mukunda's avatar Vijendar Mukunda Committed by Mark Brown

ASoC: amd: fix for soundwire build dependencies for legacy stack

The SND_SOC_AMD_SOUNDWIRE Kconfig symbol has build dependency on
SOUNDWIRE_AMD. It gets it wrong for a configuration involving
SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE=y,SND_SOC_AMD_PS=y and SOUNDWIRE_AMD=m,
which results in a link failure:

ld: vmlinux.o: in function `amd_sdw_probe':
>> sound/soc/amd/ps/pci-ps.c:271:(.text+0x1d51eff):
	undefined reference to `sdw_amd_probe'
ld: vmlinux.o: in function `acp63_sdw_machine_select':
>> sound/soc/amd/ps/pci-ps.c:294:(.text+0x1d525d5):
	undefined reference to `sdw_amd_get_slave_info'
ld: vmlinux.o: in function `amd_sdw_exit':
>> sound/soc/amd/ps/pci-ps.c:280:(.text+0x1d538ce):
	undefined reference to `sdw_amd_exit'

Add a top level check config that forbids any of the AMD ACP drivers
with version >= 6.3 from being built-in with CONFIG_SOUNDWIRE_AMD=m.
Move SND_AMD_ACP_CONFIG common dependency config to
SND_SOC_AMD_ACP63_TOPLEVEL config.
Reported-by: default avatarkernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202404061257.khJml82D-lkp@intel.com/
Fixes: a806793f ("ASoC: amd: simplify soundwire dependencies for legacy stack")
Signed-off-by: default avatarVijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://msgid.link/r/20240408180229.3287220-1-Vijendar.Mukunda@amd.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 9fd60615
...@@ -132,6 +132,19 @@ config SND_SOC_AMD_RPL_ACP6x ...@@ -132,6 +132,19 @@ config SND_SOC_AMD_RPL_ACP6x
Say m if you have such a device. Say m if you have such a device.
If unsure select "N". If unsure select "N".
config SND_SOC_AMD_ACP63_TOPLEVEL
tristate "support for AMD platforms with ACP version >= 6.3"
default SND_AMD_ACP_CONFIG
depends on SND_AMD_ACP_CONFIG
depends on SOUNDWIRE_AMD || !SOUNDWIRE_AMD
depends on X86 || COMPILE_TEST
help
This adds support for AMD platforms with ACP version >= 6.3.
Say Y if you have such a device.
If unsure select "N".
if SND_SOC_AMD_ACP63_TOPLEVEL
config SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE config SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE
tristate tristate
select SND_AMD_SOUNDWIRE_ACPI if ACPI select SND_AMD_SOUNDWIRE_ACPI if ACPI
...@@ -149,7 +162,6 @@ config SND_SOC_AMD_SOUNDWIRE ...@@ -149,7 +162,6 @@ config SND_SOC_AMD_SOUNDWIRE
config SND_SOC_AMD_PS config SND_SOC_AMD_PS
tristate "AMD Audio Coprocessor-v6.3 Pink Sardine support" tristate "AMD Audio Coprocessor-v6.3 Pink Sardine support"
select SND_AMD_ACP_CONFIG
select SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE select SND_SOC_AMD_SOUNDWIRE_LINK_BASELINE
depends on X86 && PCI && ACPI depends on X86 && PCI && ACPI
help help
...@@ -170,3 +182,5 @@ config SND_SOC_AMD_PS_MACH ...@@ -170,3 +182,5 @@ config SND_SOC_AMD_PS_MACH
DMIC can be connected directly to ACP IP. DMIC can be connected directly to ACP IP.
Say m if you have such a device. Say m if you have such a device.
If unsure select "N". If unsure select "N".
endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment