Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: wm_adsp: select CONFIG_SND_SOC_WM_ADSP from all users

The addition of the kunit test made it possible to enable the WM_ADSP
driver even when there are no users. However, an unintended side-effect
was that it is also possible to turn it off when it is actually required,
leading to build failures:

ERROR: modpost: "wm_halo_init" [sound/soc/codecs/snd-soc-cs35l45.ko] undefined!
ERROR: modpost: "wm_adsp2_remove" [sound/soc/codecs/snd-soc-cs35l45.ko] undefined!
ERROR: modpost: "wm_adsp_hibernate" [sound/soc/codecs/snd-soc-cs35l45.ko] undefined!
ERROR: modpost: "wm_adsp2_component_probe" [sound/soc/codecs/snd-soc-cs35l45.ko] undefined!

Reverse the logic to replace the ununual list of 'default y if ....' with
the regular 'select' that do the same thing but prevent it from being
disabled if that would break the build.

Fixes: bf2d44d07de7 ("ASoC: wm_adsp: Add kunit test for firmware file search")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Link: https://patch.msgid.link/20260320151752.3439218-1-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Arnd Bergmann and committed by
Mark Brown
e3f1ce07 4bdb6269

+9 -22
+9 -22
sound/soc/codecs/Kconfig
··· 401 401 tristate "Cirrus Logic wm_adsp driver" if KUNIT 402 402 select FW_CS_DSP 403 403 select SND_SOC_COMPRESS 404 - default y if SND_SOC_MADERA=y 405 - default y if SND_SOC_CS47L24=y 406 - default y if SND_SOC_WM5102=y 407 - default y if SND_SOC_WM5110=y 408 - default y if SND_SOC_WM2200=y 409 - default y if SND_SOC_CS35L41_SPI=y 410 - default y if SND_SOC_CS35L41_I2C=y 411 - default y if SND_SOC_CS35L45_SPI=y 412 - default y if SND_SOC_CS35L45_I2C=y 413 - default y if SND_SOC_CS35L56=y 414 - default y if SND_SOC_CS48L32=y 415 - default m if SND_SOC_MADERA=m 416 - default m if SND_SOC_CS47L24=m 417 - default m if SND_SOC_WM5102=m 418 - default m if SND_SOC_WM5110=m 419 - default m if SND_SOC_WM2200=m 420 - default m if SND_SOC_CS35L41_SPI=m 421 - default m if SND_SOC_CS35L41_I2C=m 422 - default m if SND_SOC_CS35L45_SPI=m 423 - default m if SND_SOC_CS35L45_I2C=m 424 - default m if SND_SOC_CS35L56=m 425 - default m if SND_SOC_CS48L32=m 426 404 427 405 config SND_SOC_WM_ADSP_TEST 428 406 tristate "KUnit tests for Cirrus Logic wm_adsp" if !KUNIT_ALL_TESTS ··· 812 834 813 835 config SND_SOC_CS35L41 814 836 tristate 837 + select SND_SOC_WM_ADSP 815 838 816 839 config SND_SOC_CS35L41_SPI 817 840 tristate "Cirrus Logic CS35L41 CODEC (SPI)" ··· 831 852 config SND_SOC_CS35L45 832 853 tristate 833 854 select REGMAP_IRQ 855 + select SND_SOC_WM_ADSP 834 856 835 857 config SND_SOC_CS35L45_SPI 836 858 tristate "Cirrus Logic CS35L45 CODEC (SPI)" ··· 855 875 856 876 config SND_SOC_CS35L56 857 877 tristate 878 + select SND_SOC_WM_ADSP 858 879 859 880 config SND_SOC_CS35L56_SHARED 860 881 select SND_SOC_CS_AMP_LIB ··· 1093 1112 config SND_SOC_CS47L24 1094 1113 tristate 1095 1114 depends on MFD_CS47L24 && MFD_ARIZONA 1115 + select SND_SOC_WM_ADSP 1096 1116 1097 1117 config SND_SOC_CS47L35 1098 1118 tristate ··· 1115 1133 tristate "Cirrus Logic CS48L32 audio DSP" 1116 1134 depends on SPI_MASTER 1117 1135 select REGMAP_SPI 1136 + select SND_SOC_WM_ADSP 1118 1137 help 1119 1138 Build the codec driver for the Cirrus Logic CS48L32 audio DSP. 1120 1139 ··· 1374 1391 1375 1392 config SND_SOC_MADERA 1376 1393 tristate 1394 + select SND_SOC_WM_ADSP 1377 1395 default y if SND_SOC_CS47L15=y 1378 1396 default y if SND_SOC_CS47L35=y 1379 1397 default y if SND_SOC_CS47L85=y ··· 2473 2489 config SND_SOC_WM2200 2474 2490 tristate 2475 2491 depends on I2C 2492 + select SND_SOC_WM_ADSP 2476 2493 2477 2494 config SND_SOC_WM5100 2478 2495 tristate ··· 2482 2497 config SND_SOC_WM5102 2483 2498 tristate 2484 2499 depends on MFD_WM5102 && MFD_ARIZONA 2500 + select SND_SOC_WM_ADSP 2485 2501 2486 2502 config SND_SOC_WM5110 2487 2503 tristate 2488 2504 depends on MFD_WM5110 && MFD_ARIZONA 2505 + select SND_SOC_WM_ADSP 2489 2506 2490 2507 config SND_SOC_WM8350 2491 2508 tristate