* [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies
@ 2026-11-03 13:25 Jude Gyimah
2026-11-03 13:25 ` [PATCH 1/5] ASoC: rockchip_i2s: select REGMAP_MMIO Jude Gyimah
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
Each of these drivers can be built into vmlinux while the code
providing a symbol it calls is a module, which fails to link. The
same shape in 5 drivers, so they are here as one series.
Affected: rockchip_i2s, rockchip_i2s_tdm, rockchip_pdm, rockchip_sai,
rockchip_spdif.
The fix is a select rather than a depends on: the providers have no
prompt of their own and are only ever enabled by a select, so a
depends on would leave these drivers unselectable.
Each was reproduced on v7.3, x86_64, by a vmlinux link that failed on
the named symbol, and each links once the select is added.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
The checker is at https://github.com/JGyimah/kreach, and the
reproducer configuration for each finding is published with it
under results/.
Jude Gyimah (5):
ASoC: rockchip_i2s: select REGMAP_MMIO
ASoC: rockchip_i2s_tdm: select REGMAP_MMIO
ASoC: rockchip_pdm: select REGMAP_MMIO
ASoC: rockchip_sai: select REGMAP_MMIO
ASoC: rockchip_spdif: select REGMAP_MMIO
sound/soc/rockchip/Kconfig | 5 +++++
1 file changed, 5 insertions(+)
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/5] ASoC: rockchip_i2s: select REGMAP_MMIO
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
@ 2026-11-03 13:25 ` Jude Gyimah
2026-11-03 13:25 ` [PATCH 2/5] ASoC: rockchip_i2s_tdm: " Jude Gyimah
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
rockchip_i2s calls __devm_regmap_init_mmio_clk, which
drivers/base/regmap/regmap-mmio.c provides under REGMAP_MMIO.
rockchip_i2s.c:(.text+0x418): undefined reference to
`__devm_regmap_init_mmio_clk'
The driver can be built into vmlinux while REGMAP_MMIO is a module, in
which case the symbol is not there at link time.
Select rather than depend on: REGMAP_MMIO has no prompt of its own and is
only ever enabled by a select, so a depends on would leave
SND_SOC_ROCKCHIP_I2S unselectable.
Reproduced on v7.3, x86_64, with CONFIG_SND_SOC_ROCKCHIP_I2S=y and
CONFIG_REGMAP_MMIO=m.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
Fixes: 4495c89fcf26 ("ASoC: add driver for Rockchip RK3xxx I2S controller")
Signed-off-by: Jude Gyimah <jude.gyimah87@gmail.com>
---
sound/soc/rockchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
index 391ce2225fde..d7ec1fbe17a5 100644
--- a/sound/soc/rockchip/Kconfig
+++ b/sound/soc/rockchip/Kconfig
@@ -5,6 +5,7 @@ menu "Rockchip"
config SND_SOC_ROCKCHIP_I2S
tristate "Rockchip I2S Device Driver"
+ select REGMAP_MMIO
select SND_SOC_GENERIC_DMAENGINE_PCM
help
Say Y or M if you want to add support for I2S driver for
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 2/5] ASoC: rockchip_i2s_tdm: select REGMAP_MMIO
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
2026-11-03 13:25 ` [PATCH 1/5] ASoC: rockchip_i2s: select REGMAP_MMIO Jude Gyimah
@ 2026-11-03 13:25 ` Jude Gyimah
2026-11-03 13:25 ` [PATCH 3/5] ASoC: rockchip_pdm: " Jude Gyimah
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
rockchip_i2s_tdm calls __devm_regmap_init_mmio_clk, which
drivers/base/regmap/regmap-mmio.c provides under REGMAP_MMIO.
rockchip_i2s_tdm.c:1304:(.text+0x14b1b6): undefined reference to
`__devm_regmap_init_mmio_clk'
The driver can be built into vmlinux while REGMAP_MMIO is a module, in
which case the symbol is not there at link time.
Select rather than depend on: REGMAP_MMIO has no prompt of its own and is
only ever enabled by a select, so a depends on would leave
SND_SOC_ROCKCHIP_I2S_TDM unselectable.
Reproduced on v7.3, x86_64, with CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=y and
CONFIG_REGMAP_MMIO=m.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
Fixes: 081068fd6414 ("ASoC: rockchip: add support for i2s-tdm controller")
Signed-off-by: Jude Gyimah <jude.gyimah87@gmail.com>
---
sound/soc/rockchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
index d7ec1fbe17a5..0f8ef6868356 100644
--- a/sound/soc/rockchip/Kconfig
+++ b/sound/soc/rockchip/Kconfig
@@ -14,6 +14,7 @@ config SND_SOC_ROCKCHIP_I2S
config SND_SOC_ROCKCHIP_I2S_TDM
tristate "Rockchip I2S/TDM Device Driver"
+ select REGMAP_MMIO
select SND_SOC_GENERIC_DMAENGINE_PCM
help
Say Y or M if you want to add support for the I2S/TDM driver for
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 3/5] ASoC: rockchip_pdm: select REGMAP_MMIO
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
2026-11-03 13:25 ` [PATCH 1/5] ASoC: rockchip_i2s: select REGMAP_MMIO Jude Gyimah
2026-11-03 13:25 ` [PATCH 2/5] ASoC: rockchip_i2s_tdm: " Jude Gyimah
@ 2026-11-03 13:25 ` Jude Gyimah
2026-11-03 13:25 ` [PATCH 4/5] ASoC: rockchip_sai: " Jude Gyimah
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
rockchip_pdm calls __devm_regmap_init_mmio_clk, which
drivers/base/regmap/regmap-mmio.c provides under REGMAP_MMIO.
rockchip_pdm.c:(.text+0xef4): undefined reference to
`__devm_regmap_init_mmio_clk'
The driver can be built into vmlinux while REGMAP_MMIO is a module, in
which case the symbol is not there at link time.
Select rather than depend on: REGMAP_MMIO has no prompt of its own and is
only ever enabled by a select, so a depends on would leave
SND_SOC_ROCKCHIP_PDM unselectable.
Reproduced on v7.3, x86_64, with CONFIG_SND_SOC_ROCKCHIP_PDM=y and
CONFIG_REGMAP_MMIO=m.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
Fixes: fc05a5b22253 ("ASoC: rockchip: add support for pdm controller")
Signed-off-by: Jude Gyimah <jude.gyimah87@gmail.com>
---
sound/soc/rockchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
index 0f8ef6868356..e0ded1fa4da5 100644
--- a/sound/soc/rockchip/Kconfig
+++ b/sound/soc/rockchip/Kconfig
@@ -25,6 +25,7 @@ config SND_SOC_ROCKCHIP_I2S_TDM
config SND_SOC_ROCKCHIP_PDM
tristate "Rockchip PDM Controller Driver"
+ select REGMAP_MMIO
select SND_SOC_GENERIC_DMAENGINE_PCM
select RATIONAL
help
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 4/5] ASoC: rockchip_sai: select REGMAP_MMIO
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
` (2 preceding siblings ...)
2026-11-03 13:25 ` [PATCH 3/5] ASoC: rockchip_pdm: " Jude Gyimah
@ 2026-11-03 13:25 ` Jude Gyimah
2026-11-03 13:25 ` [PATCH 5/5] ASoC: rockchip_spdif: " Jude Gyimah
2026-11-03 23:26 ` [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Mark Brown
5 siblings, 0 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
rockchip_sai calls __devm_regmap_init_mmio_clk, which
drivers/base/regmap/regmap-mmio.c provides under REGMAP_MMIO.
rockchip_sai.c:1424:(.text+0x153060): undefined reference to
`__devm_regmap_init_mmio_clk'
The driver can be built into vmlinux while REGMAP_MMIO is a module, in
which case the symbol is not there at link time.
Select rather than depend on: REGMAP_MMIO has no prompt of its own and is
only ever enabled by a select, so a depends on would leave
SND_SOC_ROCKCHIP_SAI unselectable.
Reproduced on v7.3, x86_64, with CONFIG_SND_SOC_ROCKCHIP_SAI=y and
CONFIG_REGMAP_MMIO=m.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
Fixes: cc78d1eaabad ("ASoC: rockchip: add Serial Audio Interface (SAI) driver")
Signed-off-by: Jude Gyimah <jude.gyimah87@gmail.com>
---
sound/soc/rockchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
index e0ded1fa4da5..aba9a518d3b2 100644
--- a/sound/soc/rockchip/Kconfig
+++ b/sound/soc/rockchip/Kconfig
@@ -35,6 +35,7 @@ config SND_SOC_ROCKCHIP_PDM
config SND_SOC_ROCKCHIP_SAI
tristate "Rockchip SAI Controller Driver"
+ select REGMAP_MMIO
select SND_SOC_GENERIC_DMAENGINE_PCM
help
Say Y or M if you want to add support for the Rockchip Serial Audio
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 5/5] ASoC: rockchip_spdif: select REGMAP_MMIO
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
` (3 preceding siblings ...)
2026-11-03 13:25 ` [PATCH 4/5] ASoC: rockchip_sai: " Jude Gyimah
@ 2026-11-03 13:25 ` Jude Gyimah
2026-11-03 23:26 ` [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Mark Brown
5 siblings, 0 replies; 7+ messages in thread
From: Jude Gyimah @ 2026-11-03 13:25 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, heiko
Cc: linux-sound, linux-arm-kernel, linux-kernel, Jude Gyimah
rockchip_spdif calls __devm_regmap_init_mmio_clk, which
drivers/base/regmap/regmap-mmio.c provides under REGMAP_MMIO.
rockchip_spdif.c:(.text+0xf67): undefined reference to
`__devm_regmap_init_mmio_clk'
The driver can be built into vmlinux while REGMAP_MMIO is a module, in
which case the symbol is not there at link time.
Select rather than depend on: REGMAP_MMIO has no prompt of its own and is
only ever enabled by a select, so a depends on would leave
SND_SOC_ROCKCHIP_SPDIF unselectable.
Reproduced on v7.3, x86_64, with CONFIG_SND_SOC_ROCKCHIP_SPDIF=y and
CONFIG_REGMAP_MMIO=m.
Found with kreach, a static check that compares what Kconfig allows
against the symbols the compiled objects actually reference.
Fixes: f874b80e1571 ("ASoC: rockchip: Add rockchip SPDIF transceiver driver")
Signed-off-by: Jude Gyimah <jude.gyimah87@gmail.com>
---
sound/soc/rockchip/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
index aba9a518d3b2..0e5110125c14 100644
--- a/sound/soc/rockchip/Kconfig
+++ b/sound/soc/rockchip/Kconfig
@@ -45,6 +45,7 @@ config SND_SOC_ROCKCHIP_SAI
config SND_SOC_ROCKCHIP_SPDIF
tristate "Rockchip SPDIF Device Driver"
+ select REGMAP_MMIO
select SND_PCM_IEC958
select SND_SOC_GENERIC_DMAENGINE_PCM
help
--
2.43.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
` (4 preceding siblings ...)
2026-11-03 13:25 ` [PATCH 5/5] ASoC: rockchip_spdif: " Jude Gyimah
@ 2026-11-03 23:26 ` Mark Brown
5 siblings, 0 replies; 7+ messages in thread
From: Mark Brown @ 2026-11-03 23:26 UTC (permalink / raw)
To: lgirdwood, perex, tiwai, heiko, Jude Gyimah
Cc: linux-sound, linux-arm-kernel, linux-kernel
On Tue, 03 Nov 2026 14:25:32 +0100, Jude Gyimah wrote:
> ASoC: rockchip: fix missing REGMAP_MMIO dependencies
>
> Each of these drivers can be built into vmlinux while the code
> providing a symbol it calls is a module, which fails to link. The
> same shape in 5 drivers, so they are here as one series.
>
> Affected: rockchip_i2s, rockchip_i2s_tdm, rockchip_pdm, rockchip_sai,
> rockchip_spdif.
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-7.4
Thanks!
[1/5] ASoC: rockchip_i2s: select REGMAP_MMIO
https://git.kernel.org/broonie/sound/c/1c57404bf9ba
[2/5] ASoC: rockchip_i2s_tdm: select REGMAP_MMIO
https://git.kernel.org/broonie/sound/c/b8284f2b73f8
[3/5] ASoC: rockchip_pdm: select REGMAP_MMIO
https://git.kernel.org/broonie/sound/c/420c7918a61b
[4/5] ASoC: rockchip_sai: select REGMAP_MMIO
https://git.kernel.org/broonie/sound/c/829904994e7a
[5/5] ASoC: rockchip_spdif: select REGMAP_MMIO
https://git.kernel.org/broonie/sound/c/67a7e2073909
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
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-11-04 11:22 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-11-03 13:25 [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Jude Gyimah
2026-11-03 13:25 ` [PATCH 1/5] ASoC: rockchip_i2s: select REGMAP_MMIO Jude Gyimah
2026-11-03 13:25 ` [PATCH 2/5] ASoC: rockchip_i2s_tdm: " Jude Gyimah
2026-11-03 13:25 ` [PATCH 3/5] ASoC: rockchip_pdm: " Jude Gyimah
2026-11-03 13:25 ` [PATCH 4/5] ASoC: rockchip_sai: " Jude Gyimah
2026-11-03 13:25 ` [PATCH 5/5] ASoC: rockchip_spdif: " Jude Gyimah
2026-11-03 23:26 ` [PATCH 0/5] ASoC: rockchip: fix missing REGMAP_MMIO dependencies Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®