Skip to content

build error since REGMAP_MMIO not selected #7364

@m1027

Description

@m1027

Describe the bug

Hi,

I am using quite stripped kernel builds. Upgrading from 6.12.x (which worked fine) to 6.18.x I was facing this kernel build error during the very last link phase:

  KSYMS   .tmp_vmlinux0.kallsyms.S
  AS      .tmp_vmlinux0.kallsyms.o
  LD      .tmp_vmlinux1
/usr/aarch64-unknown-linux-gnu/binutils-bin/2.46.0/ld: Unexpected GOT/PLT entries detected!
/usr/aarch64-unknown-linux-gnu/binutils-bin/2.46.0/ld: Unexpected run-time procedure linkages detected!
/usr/aarch64-unknown-linux-gnu/binutils-bin/2.46.0/ld: drivers/clk/clk-rp1.o: in function `rp1_clk_probe':
clk-rp1.c:(.text+0x1358): undefined reference to `__devm_regmap_init_mmio_clk'
make[2]: *** [scripts/Makefile.vmlinux:72: vmlinux.unstripped] Error 1
make[1]: *** [/usr/src/linux/Makefile:1244: vmlinux] Error 2
make: *** [Makefile:248: __sub-make] Error 2

This means: The kernel module for rp1_clk_probe (which should probably never be disabled) requires __devm_regmap_init_mmio_clk but that is missing.

In turn, __devm_regmap_init_mmio_clk gets enabled by CONFIG_REGMAP_MMIO which should be selected when RP1 is enabled - but does not seem to be pulled in by RP1. This is probably the root cause.

As a workaround, I managed to enable REGMAP_MMIO by enabling SND_BCM2835_SOC_I2S which is quite unrelated to RP1 - but fixes this issue by pulling in REGMAP_MMIO.

Thanks

Steps to reproduce the behaviour

make Image

Device (s)

Raspberry Pi 4 Mod. B

System

Trying kernel 6.18.29

Logs

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions