GNU Linux-libre 6.8.7-gnu
[releases.git] / drivers / of / unittest-data / tests-interrupts.dtsi
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 };