[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <176340045355.193991.3890050582277813670.robh@kernel.org>
Date: Mon, 17 Nov 2025 11:27:34 -0600
From: "Rob Herring (Arm)" <robh@...nel.org>
To: Geert Uytterhoeven <geert+renesas@...der.be>
Cc: Albert Ou <aou@...s.berkeley.edu>, Magnus Damm <magnus.damm@...il.com>,
linux-riscv@...ts.infradead.org, Paul Walmsley <pjw@...nel.org>,
Samuel Holland <samuel@...lland.org>,
Alexandre Ghiti <alex@...ti.fr>,
Palmer Dabbelt <palmer@...belt.com>,
Conor Dooley <conor+dt@...nel.org>, linux-kernel@...r.kernel.org,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Marc Zyngier <maz@...nel.org>,
Lad Prabhakar <prabhakar.mahadev-lad.rj@...renesas.com>,
Saravana Kannan <saravanak@...gle.com>,
linux-renesas-soc@...r.kernel.org, devicetree@...r.kernel.org
Subject: Re: [PATCH v2] of/irq: Ignore interrupt parent for nodes without
interrupts
On Fri, 14 Nov 2025 11:47:54 +0100, Geert Uytterhoeven wrote:
> The Devicetree Specification states:
>
> The root of the interrupt tree is determined when traversal of the
> interrupt tree reaches an interrupt controller node without an
> interrupts property and thus no explicit interrupt parent.
>
> However, of_irq_init() gratuitously assumes that a node without
> interrupts has an actual interrupt parent if it finds an
> interrupt-parent property higher up in the device tree. Hence when such
> a property is present (e.g. in the root node), the root interrupt
> controller may not be detected as such, causing a panic:
>
> OF: of_irq_init: children remain, but no parents
> Kernel panic - not syncing: No interrupt controller found.
>
> Commit e91033621d56e055 ("of/irq: Use interrupts-extended to find
> parent") already fixed a first part, by checking for the presence of an
> interrupts-extended property. Fix the second part by only calling
> of_irq_find_parent() when an interrupts property is present.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@...der.be>
> ---
> v2:
> - Split off from series "[PATCH/RFC 0/2] of/irq: Fix root interrupt
> controller handling"[1] to relax dependencies,
> - Drop RFC.
>
> [1] https://lore.kernel.org/all/cover.1759485668.git.geert+renesas@glider.be
> ---
> drivers/of/irq.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
Applied, thanks!
Powered by blists - more mailing lists