xref: /OK3568_Linux_fs/kernel/drivers/of/unittest-data/tests-interrupts.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun/ {
4*4882a593Smuzhiyun	testcase-data {
5*4882a593Smuzhiyun		interrupts {
6*4882a593Smuzhiyun			#address-cells = <1>;
7*4882a593Smuzhiyun			#size-cells = <1>;
8*4882a593Smuzhiyun			test_intc0: intc0 {
9*4882a593Smuzhiyun				interrupt-controller;
10*4882a593Smuzhiyun				#interrupt-cells = <1>;
11*4882a593Smuzhiyun			};
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun			test_intc1: intc1 {
14*4882a593Smuzhiyun				interrupt-controller;
15*4882a593Smuzhiyun				#interrupt-cells = <3>;
16*4882a593Smuzhiyun			};
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun			test_intc2: intc2 {
19*4882a593Smuzhiyun				interrupt-controller;
20*4882a593Smuzhiyun				#interrupt-cells = <2>;
21*4882a593Smuzhiyun			};
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun			test_intmap0: intmap0 {
24*4882a593Smuzhiyun				#interrupt-cells = <1>;
25*4882a593Smuzhiyun				#address-cells = <0>;
26*4882a593Smuzhiyun				interrupt-map = <1 &test_intc0 9>,
27*4882a593Smuzhiyun						<2 &test_intc1 10 11 12>,
28*4882a593Smuzhiyun						<3 &test_intc2 13 14>,
29*4882a593Smuzhiyun						<4 &test_intc2 15 16>;
30*4882a593Smuzhiyun			};
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun			test_intmap1: intmap1 {
33*4882a593Smuzhiyun				#interrupt-cells = <2>;
34*4882a593Smuzhiyun				interrupt-map = <0x5000 1 2 &test_intc0 15>;
35*4882a593Smuzhiyun			};
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun			interrupts0 {
38*4882a593Smuzhiyun				interrupt-parent = <&test_intc0>;
39*4882a593Smuzhiyun				interrupts = <1>, <2>, <3>, <4>;
40*4882a593Smuzhiyun			};
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun			interrupts1 {
43*4882a593Smuzhiyun				interrupt-parent = <&test_intmap0>;
44*4882a593Smuzhiyun				interrupts = <1>, <2>, <3>, <4>;
45*4882a593Smuzhiyun			};
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun			interrupts-extended0 {
48*4882a593Smuzhiyun				reg = <0x5000 0x100>;
49*4882a593Smuzhiyun				interrupts-extended = <&test_intc0 1>,
50*4882a593Smuzhiyun						      <&test_intc1 2 3 4>,
51*4882a593Smuzhiyun						      <&test_intc2 5 6>,
52*4882a593Smuzhiyun						      <&test_intmap0 1>,
53*4882a593Smuzhiyun						      <&test_intmap0 2>,
54*4882a593Smuzhiyun						      <&test_intmap0 3>,
55*4882a593Smuzhiyun						      <&test_intmap1 1 2>;
56*4882a593Smuzhiyun			};
57*4882a593Smuzhiyun		};
58*4882a593Smuzhiyun
59*4882a593Smuzhiyun		testcase-device1 {
60*4882a593Smuzhiyun			compatible = "testcase-device";
61*4882a593Smuzhiyun			interrupt-parent = <&test_intc0>;
62*4882a593Smuzhiyun			interrupts = <1>;
63*4882a593Smuzhiyun		};
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun		testcase-device2 {
66*4882a593Smuzhiyun			compatible = "testcase-device";
67*4882a593Smuzhiyun			interrupt-parent = <&test_intc2>;
68*4882a593Smuzhiyun			interrupts = <1>; /* invalid specifier - too short */
69*4882a593Smuzhiyun		};
70*4882a593Smuzhiyun	};
71*4882a593Smuzhiyun
72*4882a593Smuzhiyun};
73