Loading...
1// SPDX-License-Identifier: GPL-2.0
2
3/ {
4 testcase-data {
5 interrupts {
6 #address-cells = <1>;
7 #size-cells = <1>;
8 test_intc0: intc0 {
9 interrupt-controller;
10 #interrupt-cells = <1>;
11 };
12
13 test_intc1: intc1 {
14 interrupt-controller;
15 #interrupt-cells = <3>;
16 };
17
18 test_intc2: intc2 {
19 interrupt-controller;
20 #interrupt-cells = <2>;
21 };
22
23 test_intmap0: intmap0 {
24 #interrupt-cells = <1>;
25 #address-cells = <0>;
26 interrupt-map = <1 &test_intc0 9>,
27 <2 &test_intc1 10 11 12>,
28 <3 &test_intc2 13 14>,
29 <4 &test_intc2 15 16>;
30 };
31
32 test_intmap1: intmap1 {
33 #interrupt-cells = <2>;
34 interrupt-map = <0x5000 1 2 &test_intc0 15>;
35 };
36
37 interrupts0 {
38 interrupt-parent = <&test_intc0>;
39 interrupts = <1>, <2>, <3>, <4>;
40 };
41
42 interrupts1 {
43 interrupt-parent = <&test_intmap0>;
44 interrupts = <1>, <2>, <3>, <4>;
45 };
46
47 interrupts-extended0 {
48 reg = <0x5000 0x100>;
49 interrupts-extended = <&test_intc0 1>,
50 <&test_intc1 2 3 4>,
51 <&test_intc2 5 6>,
52 <&test_intmap0 1>,
53 <&test_intmap0 2>,
54 <&test_intmap0 3>,
55 <&test_intmap1 1 2>;
56 };
57 };
58
59 testcase-device1 {
60 compatible = "testcase-device";
61 interrupt-parent = <&test_intc0>;
62 interrupts = <1>;
63 };
64
65 testcase-device2 {
66 compatible = "testcase-device";
67 interrupt-parent = <&test_intc2>;
68 interrupts = <1>; /* invalid specifier - too short */
69 };
70 };
71
72};
1// SPDX-License-Identifier: GPL-2.0
2
3/ {
4 testcase-data {
5 interrupts {
6 #address-cells = <1>;
7 #size-cells = <1>;
8
9 test_intc0: intc0 {
10 interrupt-controller;
11 #interrupt-cells = <1>;
12 };
13
14 test_intc1: intc1 {
15 interrupt-controller;
16 #interrupt-cells = <3>;
17 };
18
19 test_intc2: intc2 {
20 interrupt-controller;
21 #interrupt-cells = <2>;
22 };
23
24 test_intmap0: intmap0 {
25 #interrupt-cells = <1>;
26 #address-cells = <0>;
27 interrupt-map = <1 &test_intc0 9>,
28 <2 &test_intc1 10 11 12>,
29 <3 &test_intc2 13 14>,
30 <4 &test_intc2 15 16>;
31 };
32
33 test_intmap1: intmap1 {
34 #interrupt-cells = <2>;
35 /*
36 * #address-cells is required
37 *
38 * The property is not provided in this node to
39 * test that the code will properly handle
40 * this case for legacy .dts files.
41 *
42 * Not having #address-cells will result in a
43 * warning from dtc starting with
44 * version v1.6.1-19-g0a3a9d3449c8
45 * The warning is suppressed by adding
46 * -Wno-interrupt_map to the Makefile for all
47 * .dts files this include this .dtsi
48 #address-cells = <1>;
49 */
50 interrupt-map = <0x5000 1 2 &test_intc0 15>;
51 };
52
53 interrupts0 {
54 interrupt-parent = <&test_intc0>;
55 interrupts = <1>, <2>, <3>, <4>;
56 };
57
58 interrupts1 {
59 interrupt-parent = <&test_intmap0>;
60 interrupts = <1>, <2>, <3>, <4>;
61 };
62
63 interrupts-extended0 {
64 reg = <0x5000 0x100>;
65 /*
66 * Do not remove &test_intmap1 from this
67 * property - see comment in node intmap1
68 */
69 interrupts-extended = <&test_intc0 1>,
70 <&test_intc1 2 3 4>,
71 <&test_intc2 5 6>,
72 <&test_intmap0 1>,
73 <&test_intmap0 2>,
74 <&test_intmap0 3>,
75 <&test_intmap1 1 2>;
76 };
77 };
78
79 testcase-device1 {
80 compatible = "testcase-device";
81 interrupt-parent = <&test_intc0>;
82 interrupts = <1>;
83 };
84
85 /*
86 * testcase data that intentionally results in an error is
87 * located in testcases.dts instead of in this file so that the
88 * static overlay apply tests will not include the error.
89 */
90 };
91};