From: Marc Zyngier <maz@kernel.org>
To: John <therealgraysky@proton.me>
Cc: "Mark Rutland" <mark.rutland@arm.com>,
"Daniel Lezcano" <daniel.lezcano@kernel.org>,
"Thomas Gleixner" <tglx@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Florian Fainelli" <florian.fainelli@broadcom.com>,
"Broadcom internal kernel review list"
<bcm-kernel-feedback-list@broadcom.com>,
"Ivan T. Ivanov" <iivanov@suse.de>,
"Stefan Wahren" <wahrenst@gmx.net>,
"Andrea della Porta" <andrea.porta@suse.com>,
"Peter Robinson" <pbrobinson@gmail.com>,
"Stanimir Varbanov" <svarbanov@suse.de>,
"Maíra Canal" <mcanal@igalia.com>,
"Gregor Herburger" <gregor.herburger@linutronix.de>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-rpi-kernel@lists.infradead.org"
<linux-rpi-kernel@lists.infradead.org>
Subject: Re: [REGRESSION] Raspberry Pi 5 (BCM2712) hangs at boot since d87773de9efe (arm_arch_timer: default to EL2 virtual timer under VHE)
Date: Mon, 06 Jul 2026 15:40:49 +0100 [thread overview]
Message-ID: <86h5mcp4em.wl-maz@kernel.org> (raw)
In-Reply-To: <oTZ1wsFlcf4l8zMuD8DYCCvff35nVbFn7gTb5_vrUPSJtjVBSTmGti8S3KnbVdVWJEzP1QRbWma6UYYXyi6v2J0fl61khniPROEhsdxMIz8=@proton.me>
On Mon, 06 Jul 2026 15:13:27 +0100,
John <therealgraysky@proton.me> wrote:
>
> 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.
>
Is that a guess? Or do you know something we don't? Or worse, is this
report entirely AI generated?
> 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.
>
Again, how do you know it isn't functional? Could it be, for example,
that the firmware has not configured the interrupt correctly?
> 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
A proposed fix has been posted at [1]. Until we hear from the
implementer about the state of the HW, it is difficult to do anything.
M.
[1] https://lore.kernel.org/all/878q898ulx.wl-maz@kernel.org/
--
Without deviation from the norm, progress is not possible.
next prev parent reply other threads:[~2026-07-06 14:40 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-06 14:13 [REGRESSION] Raspberry Pi 5 (BCM2712) hangs at boot since d87773de9efe (arm_arch_timer: default to EL2 virtual timer under VHE) John
2026-07-06 14:40 ` Marc Zyngier [this message]
2026-07-06 15:20 ` John
2026-07-06 15:31 ` Marc Zyngier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86h5mcp4em.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=andrea.porta@suse.com \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=conor+dt@kernel.org \
--cc=daniel.lezcano@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=florian.fainelli@broadcom.com \
--cc=gregor.herburger@linutronix.de \
--cc=iivanov@suse.de \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=mcanal@igalia.com \
--cc=pbrobinson@gmail.com \
--cc=robh@kernel.org \
--cc=svarbanov@suse.de \
--cc=tglx@kernel.org \
--cc=therealgraysky@proton.me \
--cc=wahrenst@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.