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 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 /*
35 * #address-cells is required
36 *
37 * The property is not provided in this node to
38 * test that the code will properly handle
39 * this case for legacy .dts files.
40 *
41 * Not having #address-cells will result in a
42 * warning from dtc starting with
43 * version v1.6.1-19-g0a3a9d3449c8
44 * The warning is suppressed by adding
45 * -Wno-interrupt_map to the Makefile for all
46 * .dts files this include this .dtsi
47 #address-cells = <1>;
48 */
49 interrupt-map = <0x5000 1 2 &test_intc0 15>;
50 };
51
52 interrupts0 {
53 interrupt-parent = <&test_intc0>;
54 interrupts = <1>, <2>, <3>, <4>;
55 };
56
57 interrupts1 {
58 interrupt-parent = <&test_intmap0>;
59 interrupts = <1>, <2>, <3>, <4>;
60 };
61
62 interrupts-extended0 {
63 reg = <0x5000 0x100>;
64 /*
65 * Do not remove &test_intmap1 from this
66 * property - see comment in node intmap1
67 */
68 interrupts-extended = <&test_intc0 1>,
69 <&test_intc1 2 3 4>,
70 <&test_intc2 5 6>,
71 <&test_intmap0 1>,
72 <&test_intmap0 2>,
73 <&test_intmap0 3>,
74 <&test_intmap1 1 2>;
75 };
76 };
77
78 testcase-device1 {
79 compatible = "testcase-device";
80 interrupt-parent = <&test_intc0>;
81 interrupts = <1>;
82 };
83
84 /*
85 * testcase data that intentionally results in an error is
86 * located in testcases.dts instead of in this file so that the
87 * static overlay apply tests will not include the error.
88 */
89 };
90};