Browse Source
Add a check for parsing 'interrupt-map' properties. The check primarily tests parsing 'interrupt-map' properties which depends on and the parent interrupt controller (or another map) node. Note that this does not require '#address-cells' in the interrupt-map parent, but treats missing '#address-cells' as 0 which is how the Linux kernel parses it. There's numerous cases that expect this behavior. Cc: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Rob Herring <robh@kernel.org> Message-Id: <20211015213527.2237774-1-robh@kernel.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>main
Rob Herring
3 years ago
committed by
David Gibson
5 changed files with 144 additions and 0 deletions
@ -0,0 +1,20 @@
@@ -0,0 +1,20 @@
|
||||
/dts-v1/; |
||||
|
||||
/ { |
||||
interrupt-parent = <&intc>; |
||||
intc: interrupt-controller { |
||||
#interrupt-cells = <3>; |
||||
interrupt-controller; |
||||
}; |
||||
|
||||
node { |
||||
#address-cells = <0>; |
||||
#interrupt-cells = <1>; |
||||
interrupt-map = <1 &intc 1 2 3>; |
||||
interrupt-map-mask = <0 0>; |
||||
|
||||
child { |
||||
interrupts = <1>; |
||||
}; |
||||
}; |
||||
}; |
@ -0,0 +1,17 @@
@@ -0,0 +1,17 @@
|
||||
/dts-v1/; |
||||
|
||||
/ { |
||||
interrupt-parent = <&intc>; |
||||
intc: interrupt-controller { |
||||
}; |
||||
|
||||
node { |
||||
#address-cells = <0>; |
||||
#interrupt-cells = <1>; |
||||
interrupt-map = <1 &intc 1 2 3>; |
||||
|
||||
child { |
||||
interrupts = <1>; |
||||
}; |
||||
}; |
||||
}; |
@ -0,0 +1,19 @@
@@ -0,0 +1,19 @@
|
||||
/dts-v1/; |
||||
|
||||
/ { |
||||
interrupt-parent = <&intc>; |
||||
intc: interrupt-controller { |
||||
#interrupt-cells = <3>; |
||||
interrupt-controller; |
||||
}; |
||||
|
||||
node { |
||||
/* Missing #address-cells = <0>; */ |
||||
#interrupt-cells = <1>; |
||||
interrupt-map = <1 &intc 1 2 3>; |
||||
|
||||
child { |
||||
interrupts = <1>; |
||||
}; |
||||
}; |
||||
}; |
Loading…
Reference in new issue