]> Gentwo Git Trees - linux/.git/commit
of/irq: Ignore interrupt parent for nodes without interrupts
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 14 Nov 2025 10:47:54 +0000 (11:47 +0100)
committerRob Herring (Arm) <robh@kernel.org>
Mon, 17 Nov 2025 17:27:51 +0000 (11:27 -0600)
commit1b1f04d8271e7ba70fbbb13754b1e869f70aa785
tree2c55989522f081940965df60cb4c79254f6d5f6b
parentc7496597adbd85fb1d7293d2938ba21f12c212e4
of/irq: Ignore interrupt parent for nodes without interrupts

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@glider.be>
Link: https://patch.msgid.link/fbe6fc3657070fe2df7f0529043542b52b827449.1763116833.git.geert+renesas@glider.be
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
drivers/of/irq.c