Describe the bug When building Armbian for the radxa-e24c (currently in WIP) using the vendor branch (Linux 6.1.115), the kernel completely freezes during early boot. The last serial output is always at srcu_init. There is no kernel panic, no reboot, and adding initcall_debug yields absolutely no output. The CPU seems to encounter a hard lockup or synchronous abort before initializing the timers.
To Reproduce
Build command: ./compile.sh BOARD=radxa-e24c BRANCH=vendor RELEASE=bookworm BUILD_MINIMAL=yes BUILD_DESKTOP=no EXPERT=yes
Flash the generated image to eMMC.
Boot the Radxa E24C board while monitoring UART0 (earlycon=uart8250,mmio32,0xff9f0000).
Expected behavior The kernel should proceed past RCU initialization, start the arch_timer, and continue to mount the rootfs.
Actual behavior The boot process stops dead here:
Plaintext [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. ... [ 0.000000] GIC: Using split EOI/Deactivate mode [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. (Hangs forever)
Investigation & Hardware Suspects To isolate the issue, I flashed the official Radxa ROCK 2F image (also RK3528, Vendor 6.1.115) onto my E24C board. Surprisingly, the 2F image successfully passes srcu_init, initializes the timers, and reaches the initramfs shell.
By comparing the working 2F dmesg and .config against the Armbian build, I strongly suspect the lockup is caused by one of the following low-level hardware/resource conflicts in the current wip device tree or defconfig:
SPI vs. eMMC Pinmux Conflict (Highly Suspected): According to the E24C hardware documentation, the SPI Flash and eMMC share multiplexed pins and are mutually exclusive. If the rk3528-radxa-e24c.dts (or the included -spi.dts) enables both &sfc and &sdhci simultaneously, it likely causes a fatal bus deadlock during early pinmux initialization.
FIQ Debugger Interrupt Hijacking: The Rockchip vendor config often enables CONFIG_FIQ_DEBUGGER. If it binds to UART0 while earlycon is using it, the GIC initialization might trigger an unhandled FIQ exception, freezing the CPU silently.
DMC / ATF (Trust) Crash: The kernel might be crashing the ATF (BL31 v1.17) when attempting to initialize DRAM frequency scaling (&dmc).
Questions for the community
Has anyone successfully booted the radxa-e24c.wip target on the vendor 6.1 branch recently?
Are there any existing patches to forcefully disable &sfc and &dmc for the E24C target to prevent these early initialization deadlocks?
Any insights or suggestions for patching the DTS/config for this WIP board would be greatly appreciated!
main (main development branch)
Ubuntu 22.04 Jammy
No response