2020-04-28 21:55:27

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] ASoC: rt5682: fix I2C/Soundwire dependencies

If one of the two is a loadable module, the combined driver must
not be built-in:

aarch64-linux-ld: sound/soc/codecs/rt5682.o: in function `rt5682_sdw_hw_free':
rt5682.c:(.text+0xb34): undefined reference to `sdw_stream_remove_slave'
aarch64-linux-ld: sound/soc/codecs/rt5682.o: in function `rt5682_sdw_hw_params':
rt5682.c:(.text+0xe78): undefined reference to `sdw_stream_add_slave'

In particular, the soundwire driver must not be built-in if
CONFIG_I2C=m.

Fixes: 5549ea647997 ("ASoC: rt5682: fix unmet dependencies")
Signed-off-by: Arnd Bergmann <[email protected]>
---
sound/soc/codecs/Kconfig | 3 +++
1 file changed, 3 insertions(+)

diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index 1ce76f04c154..d911956c591d 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -1137,10 +1137,13 @@ config SND_SOC_RT5677_SPI
config SND_SOC_RT5682
tristate
depends on I2C || SOUNDWIRE
+ depends on SOUNDWIRE || !SOUNDWIRE
+ depends on I2C || !I2C

config SND_SOC_RT5682_SDW
tristate "Realtek RT5682 Codec - SDW"
depends on SOUNDWIRE
+ depends on I2C || !I2C
select SND_SOC_RT5682
select REGMAP_SOUNDWIRE

--
2.26.0


2020-04-29 16:28:56

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH] ASoC: rt5682: fix I2C/Soundwire dependencies

On Tue, 28 Apr 2020 23:46:14 +0200, Arnd Bergmann wrote:
> If one of the two is a loadable module, the combined driver must
> not be built-in:
>
> aarch64-linux-ld: sound/soc/codecs/rt5682.o: in function `rt5682_sdw_hw_free':
> rt5682.c:(.text+0xb34): undefined reference to `sdw_stream_remove_slave'
> aarch64-linux-ld: sound/soc/codecs/rt5682.o: in function `rt5682_sdw_hw_params':
> rt5682.c:(.text+0xe78): undefined reference to `sdw_stream_add_slave'
>
> [...]

Applied to

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

Thanks!

[1/1] ASoC: rt5682: fix I2C/Soundwire dependencies
commit: fd443a20c2f0950f3c31765a08f7dd49b3bc69cb

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