aboutsummaryrefslogtreecommitdiffstats
path: root/arch/c6x/boot
diff options
context:
space:
mode:
Diffstat (limited to 'arch/c6x/boot')
-rw-r--r--arch/c6x/boot/dts/evmc6678.dts83
-rw-r--r--arch/c6x/boot/dts/tms320c6678.dtsi146
2 files changed, 229 insertions, 0 deletions
diff --git a/arch/c6x/boot/dts/evmc6678.dts b/arch/c6x/boot/dts/evmc6678.dts
new file mode 100644
index 000000000000..ab686301d321
--- /dev/null
+++ b/arch/c6x/boot/dts/evmc6678.dts
@@ -0,0 +1,83 @@
1/*
2 * arch/c6x/boot/dts/evmc6678.dts
3 *
4 * EVMC6678 Evaluation Platform For TMS320C6678
5 *
6 * Copyright (C) 2012 Texas Instruments Incorporated
7 *
8 * Author: Ken Cox <jkc@redhat.com>
9 *
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public License
12 * as published by the Free Software Foundation; either version 2
13 * of the License, or (at your option) any later version.
14 *
15 */
16
17/dts-v1/;
18
19/include/ "tms320c6678.dtsi"
20
21/ {
22 model = "Advantech EVMC6678";
23 compatible = "advantech,evmc6678";
24
25 chosen {
26 bootargs = "root=/dev/nfs ip=dhcp rw";
27 };
28
29 memory {
30 device_type = "memory";
31 reg = <0x80000000 0x20000000>;
32 };
33
34 soc {
35 megamod_pic: interrupt-controller@1800000 {
36 interrupts = < 12 13 14 15 >;
37 };
38
39 timer8: timer@2280000 {
40 interrupt-parent = <&megamod_pic>;
41 interrupts = < 66 >;
42 };
43
44 timer9: timer@2290000 {
45 interrupt-parent = <&megamod_pic>;
46 interrupts = < 68 >;
47 };
48
49 timer10: timer@22A0000 {
50 interrupt-parent = <&megamod_pic>;
51 interrupts = < 70 >;
52 };
53
54 timer11: timer@22B0000 {
55 interrupt-parent = <&megamod_pic>;
56 interrupts = < 72 >;
57 };
58
59 timer12: timer@22C0000 {
60 interrupt-parent = <&megamod_pic>;
61 interrupts = < 74 >;
62 };
63
64 timer13: timer@22D0000 {
65 interrupt-parent = <&megamod_pic>;
66 interrupts = < 76 >;
67 };
68
69 timer14: timer@22E0000 {
70 interrupt-parent = <&megamod_pic>;
71 interrupts = < 78 >;
72 };
73
74 timer15: timer@22F0000 {
75 interrupt-parent = <&megamod_pic>;
76 interrupts = < 80 >;
77 };
78
79 clock-controller@2310000 {
80 clock-frequency = <100000000>;
81 };
82 };
83};
diff --git a/arch/c6x/boot/dts/tms320c6678.dtsi b/arch/c6x/boot/dts/tms320c6678.dtsi
new file mode 100644
index 000000000000..386196e5eae7
--- /dev/null
+++ b/arch/c6x/boot/dts/tms320c6678.dtsi
@@ -0,0 +1,146 @@
1
2/ {
3 #address-cells = <1>;
4 #size-cells = <1>;
5
6 cpus {
7 #address-cells = <1>;
8 #size-cells = <0>;
9
10 cpu@0 {
11 device_type = "cpu";
12 reg = <0>;
13 model = "ti,c66x";
14 };
15 cpu@1 {
16 device_type = "cpu";
17 reg = <1>;
18 model = "ti,c66x";
19 };
20 cpu@2 {
21 device_type = "cpu";
22 reg = <2>;
23 model = "ti,c66x";
24 };
25 cpu@3 {
26 device_type = "cpu";
27 reg = <3>;
28 model = "ti,c66x";
29 };
30 cpu@4 {
31 device_type = "cpu";
32 reg = <4>;
33 model = "ti,c66x";
34 };
35 cpu@5 {
36 device_type = "cpu";
37 reg = <5>;
38 model = "ti,c66x";
39 };
40 cpu@6 {
41 device_type = "cpu";
42 reg = <6>;
43 model = "ti,c66x";
44 };
45 cpu@7 {
46 device_type = "cpu";
47 reg = <7>;
48 model = "ti,c66x";
49 };
50 };
51
52 soc {
53 compatible = "simple-bus";
54 model = "tms320c6678";
55 #address-cells = <1>;
56 #size-cells = <1>;
57 ranges;
58
59 core_pic: interrupt-controller {
60 compatible = "ti,c64x+core-pic";
61 interrupt-controller;
62 #interrupt-cells = <1>;
63 };
64
65 megamod_pic: interrupt-controller@1800000 {
66 compatible = "ti,c64x+megamod-pic";
67 interrupt-controller;
68 #interrupt-cells = <1>;
69 reg = <0x1800000 0x1000>;
70 interrupt-parent = <&core_pic>;
71 };
72
73 cache-controller@1840000 {
74 compatible = "ti,c64x+cache";
75 reg = <0x01840000 0x8400>;
76 };
77
78 timer8: timer@2280000 {
79 compatible = "ti,c64x+timer64";
80 ti,core-mask = < 0x01 >;
81 reg = <0x2280000 0x40>;
82 };
83
84 timer9: timer@2290000 {
85 compatible = "ti,c64x+timer64";
86 ti,core-mask = < 0x02 >;
87 reg = <0x2290000 0x40>;
88 };
89
90 timer10: timer@22A0000 {
91 compatible = "ti,c64x+timer64";
92 ti,core-mask = < 0x04 >;
93 reg = <0x22A0000 0x40>;
94 };
95
96 timer11: timer@22B0000 {
97 compatible = "ti,c64x+timer64";
98 ti,core-mask = < 0x08 >;
99 reg = <0x22B0000 0x40>;
100 };
101
102 timer12: timer@22C0000 {
103 compatible = "ti,c64x+timer64";
104 ti,core-mask = < 0x10 >;
105 reg = <0x22C0000 0x40>;
106 };
107
108 timer13: timer@22D0000 {
109 compatible = "ti,c64x+timer64";
110 ti,core-mask = < 0x20 >;
111 reg = <0x22D0000 0x40>;
112 };
113
114 timer14: timer@22E0000 {
115 compatible = "ti,c64x+timer64";
116 ti,core-mask = < 0x40 >;
117 reg = <0x22E0000 0x40>;
118 };
119
120 timer15: timer@22F0000 {
121 compatible = "ti,c64x+timer64";
122 ti,core-mask = < 0x80 >;
123 reg = <0x22F0000 0x40>;
124 };
125
126 clock-controller@2310000 {
127 compatible = "ti,c6678-pll", "ti,c64x+pll";
128 reg = <0x02310000 0x200>;
129 ti,c64x+pll-bypass-delay = <200>;
130 ti,c64x+pll-reset-delay = <12000>;
131 ti,c64x+pll-lock-delay = <80000>;
132 };
133
134 device-state-controller@2620000 {
135 compatible = "ti,c64x+dscr";
136 reg = <0x02620000 0x1000>;
137
138 ti,dscr-devstat = <0x20>;
139 ti,dscr-silicon-rev = <0x18 28 0xf>;
140
141 ti,dscr-mac-fuse-regs = <0x110 1 2 3 4
142 0x114 5 6 0 0>;
143
144 };
145 };
146};