[REGRESSION] Raspberry Pi 5 (BCM2712) hangs at boot since d87773de9efe (arm_arch_timer: default to EL2 virtual timer under VHE)
John
therealgraysky at proton.me
Mon Jul 6 07:13:27 PDT 2026
Since commit d87773de9efe ("clocksource/drivers/arm_arch_timer: Default to EL2 virtual timer when running VHE"), the Raspberry Pi 5 (BCM2712, arm64) hangs during boot on v7.2-rc1 and later. Reverting that commit on top of v7.2-rc2 boots reliably. Found by bisection.
Environment: - Raspberry Pi 5 Model B, arm64, device-tree boot (no ACPI) - CPUs start at EL2 with VHE - Mainline v7.2-rc1 and v7.2-rc2
Symptom: - Silent hang early in driver probe; no panic or oops. Boot banner shows
"arch_timer: cp15 timer running at 54.00MHz (hyp-virt)". The first blocking, timer-backed wait during probe never returns because the EL2 virtual timer's interrupt is not delivered on this SoC, so clockevents are dead. The softlockup/hung-task detectors can't fire either, since they depend on the same dead timer.
Cause: - BCM2712's timer node lists five interrupts including the EL2 virtual
timer (GIC PPI 12). The new default trusts that entry and switches to the EL2 virtual timer, whose interrupt is non-functional on this board. Before the commit, VHE systems used the EL2 physical timer, which works.
Possible fix / workaround: - Removing the EL2 virtual-timer interrupt (GIC PPI 12) from the BCM2712
timer node makes the driver fall back to the EL2 physical timer (the pre-commit behavior) and boots. Whether the correct fix is in the DT or in hardening the driver's PPI selection, I'll leave to you.
#regzbot introduced: d87773de9efe1df6fe2ba379926f9df92f1a5913
More information about the linux-arm-kernel
mailing list