sound/soc/sdca/Kconfig | 5 +++-- sound/soc/sdca/Makefile | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-)
From: Arnd Bergmann <arnd@arndb.de>
It is not possible to enable SND_SOC_SDCA_HID when SND_SOC_SDCA is built-in
but HID is in a loadable module, as that results in a link failure:
x86_64-linux-ld: sound/soc/sdca/sdca_functions.o: in function `find_sdca_entity_hide':
sdca_functions.c:(.text+0x25b): undefined reference to `sdca_add_hid_device'
Change SND_SOC_SDCA_HID into a 'bool' option that can only be enabled
if this results in a working build, and change the Makefile so this driver
is a loadable module if possible.
Fixes: ac558015dfd8 ("ASoC: SDCA: add a HID device for HIDE entity")
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
v2: small simplification suggested by Charles
---
sound/soc/sdca/Kconfig | 5 +++--
sound/soc/sdca/Makefile | 4 +++-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/sound/soc/sdca/Kconfig b/sound/soc/sdca/Kconfig
index 53f6926255ae..2253a300dcc3 100644
--- a/sound/soc/sdca/Kconfig
+++ b/sound/soc/sdca/Kconfig
@@ -12,8 +12,9 @@ config SND_SOC_SDCA_OPTIONAL
def_tristate SND_SOC_SDCA || !SND_SOC_SDCA
config SND_SOC_SDCA_HID
- tristate "SDCA HID support"
- depends on SND_SOC_SDCA && HID
+ bool "SDCA HID support"
+ depends on SND_SOC_SDCA
+ depends on HID=y || HID=SND_SOC_SDCA
config SND_SOC_SDCA_IRQ
tristate
diff --git a/sound/soc/sdca/Makefile b/sound/soc/sdca/Makefile
index 2a3938d11ca9..1efc869c6cbc 100644
--- a/sound/soc/sdca/Makefile
+++ b/sound/soc/sdca/Makefile
@@ -5,5 +5,7 @@ snd-soc-sdca-hid-y := sdca_hid.o
snd-soc-sdca-irq-y := sdca_interrupts.o
obj-$(CONFIG_SND_SOC_SDCA) += snd-soc-sdca.o
-obj-$(CONFIG_SND_SOC_SDCA_HID) += snd-soc-sdca-hid.o
+ifdef CONFIG_SND_SOC_SDCA_HID
+obj-$(CONFIG_SND_SOC_SDCA) += snd-soc-sdca-hid.o
+endif
obj-$(CONFIG_SND_SOC_SDCA_IRQ) += snd-soc-sdca-irq.o
--
2.39.5
On Wed, 09 Jul 2025 17:24:17 +0200, Arnd Bergmann wrote: > It is not possible to enable SND_SOC_SDCA_HID when SND_SOC_SDCA is built-in > but HID is in a loadable module, as that results in a link failure: > > x86_64-linux-ld: sound/soc/sdca/sdca_functions.o: in function `find_sdca_entity_hide': > sdca_functions.c:(.text+0x25b): undefined reference to `sdca_add_hid_device' > > Change SND_SOC_SDCA_HID into a 'bool' option that can only be enabled > if this results in a working build, and change the Makefile so this driver > is a loadable module if possible. > > [...] Applied to https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next Thanks! [1/1] ASoC: SDCA: fix HID dependency commit: ad4655653a6c463026ed3c300e5fb34f39abff48 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
© 2016 - 2025 Red Hat, Inc.