blob: 5927a8df562536550b101669f45978f33907e0ac [file] [log] [blame]
Rob Herring253d7ad2011-08-10 15:22:11 -05001/*
Rob Herring8d4d9f52012-03-13 18:19:19 -05002 * Copyright 2011-2012 Calxeda, Inc.
Rob Herring253d7ad2011-08-10 15:22:11 -05003 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms and conditions of the GNU General Public License,
6 * version 2, as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
11 * more details.
12 *
13 * You should have received a copy of the GNU General Public License along with
14 * this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17/dts-v1/;
18
19/* First 4KB has pen for secondary cores. */
20/memreserve/ 0x00000000 0x0001000;
21
22/ {
23 model = "Calxeda Highbank";
24 compatible = "calxeda,highbank";
25 #address-cells = <1>;
26 #size-cells = <1>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050027 clock-ranges;
Rob Herring253d7ad2011-08-10 15:22:11 -050028
29 cpus {
30 #address-cells = <1>;
31 #size-cells = <0>;
32
Rob Herring3943dee2012-12-30 10:15:03 -060033 cpu@900 {
Rob Herring253d7ad2011-08-10 15:22:11 -050034 compatible = "arm,cortex-a9";
Rob Herring36ff67b2012-12-30 10:15:02 -060035 device_type = "cpu";
Rob Herring3943dee2012-12-30 10:15:03 -060036 reg = <0x900>;
Rob Herring253d7ad2011-08-10 15:22:11 -050037 next-level-cache = <&L2>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050038 clocks = <&a9pll>;
39 clock-names = "cpu";
Rob Herring253d7ad2011-08-10 15:22:11 -050040 };
41
Rob Herring3943dee2012-12-30 10:15:03 -060042 cpu@901 {
Rob Herring253d7ad2011-08-10 15:22:11 -050043 compatible = "arm,cortex-a9";
Rob Herring36ff67b2012-12-30 10:15:02 -060044 device_type = "cpu";
Rob Herring3943dee2012-12-30 10:15:03 -060045 reg = <0x901>;
Rob Herring253d7ad2011-08-10 15:22:11 -050046 next-level-cache = <&L2>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050047 clocks = <&a9pll>;
48 clock-names = "cpu";
Rob Herring253d7ad2011-08-10 15:22:11 -050049 };
50
Rob Herring3943dee2012-12-30 10:15:03 -060051 cpu@902 {
Rob Herring253d7ad2011-08-10 15:22:11 -050052 compatible = "arm,cortex-a9";
Rob Herring36ff67b2012-12-30 10:15:02 -060053 device_type = "cpu";
Rob Herring3943dee2012-12-30 10:15:03 -060054 reg = <0x902>;
Rob Herring253d7ad2011-08-10 15:22:11 -050055 next-level-cache = <&L2>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050056 clocks = <&a9pll>;
57 clock-names = "cpu";
Rob Herring253d7ad2011-08-10 15:22:11 -050058 };
59
Rob Herring3943dee2012-12-30 10:15:03 -060060 cpu@903 {
Rob Herring253d7ad2011-08-10 15:22:11 -050061 compatible = "arm,cortex-a9";
Rob Herring36ff67b2012-12-30 10:15:02 -060062 device_type = "cpu";
Rob Herring3943dee2012-12-30 10:15:03 -060063 reg = <0x903>;
Rob Herring253d7ad2011-08-10 15:22:11 -050064 next-level-cache = <&L2>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050065 clocks = <&a9pll>;
66 clock-names = "cpu";
Rob Herring253d7ad2011-08-10 15:22:11 -050067 };
68 };
69
70 memory {
71 name = "memory";
72 device_type = "memory";
73 reg = <0x00000000 0xff900000>;
74 };
75
Rob Herring253d7ad2011-08-10 15:22:11 -050076 soc {
Rob Herring7d6ab9b2012-10-25 11:59:09 -050077 ranges = <0x00000000 0x00000000 0xffffffff>;
Rob Herring253d7ad2011-08-10 15:22:11 -050078
79 timer@fff10600 {
Marc Zyngier7ac9b9e2012-01-10 19:44:19 +000080 compatible = "arm,cortex-a9-twd-timer";
Rob Herring253d7ad2011-08-10 15:22:11 -050081 reg = <0xfff10600 0x20>;
Marc Zyngier7ac9b9e2012-01-10 19:44:19 +000082 interrupts = <1 13 0xf01>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050083 clocks = <&a9periphclk>;
Rob Herring253d7ad2011-08-10 15:22:11 -050084 };
85
86 watchdog@fff10620 {
Marc Zyngier7ac9b9e2012-01-10 19:44:19 +000087 compatible = "arm,cortex-a9-twd-wdt";
Rob Herring253d7ad2011-08-10 15:22:11 -050088 reg = <0xfff10620 0x20>;
Marc Zyngier7ac9b9e2012-01-10 19:44:19 +000089 interrupts = <1 14 0xf01>;
Rob Herring8d4d9f52012-03-13 18:19:19 -050090 clocks = <&a9periphclk>;
Rob Herring253d7ad2011-08-10 15:22:11 -050091 };
92
93 intc: interrupt-controller@fff11000 {
94 compatible = "arm,cortex-a9-gic";
95 #interrupt-cells = <3>;
96 #size-cells = <0>;
97 #address-cells = <1>;
98 interrupt-controller;
Rob Herring253d7ad2011-08-10 15:22:11 -050099 reg = <0xfff11000 0x1000>,
100 <0xfff10100 0x100>;
101 };
102
103 L2: l2-cache {
104 compatible = "arm,pl310-cache";
105 reg = <0xfff12000 0x1000>;
106 interrupts = <0 70 4>;
107 cache-unified;
108 cache-level = <2>;
109 };
110
111 pmu {
112 compatible = "arm,cortex-a9-pmu";
113 interrupts = <0 76 4 0 75 4 0 74 4 0 73 4>;
114 };
115
Rob Herring253d7ad2011-08-10 15:22:11 -0500116
Rob Herring69154d02012-06-11 21:32:14 -0500117 sregs@fff3c200 {
118 compatible = "calxeda,hb-sregs-l2-ecc";
119 reg = <0xfff3c200 0x100>;
120 interrupts = <0 71 4 0 72 4>;
121 };
122
Rob Herring253d7ad2011-08-10 15:22:11 -0500123 };
124};
Rob Herring7d6ab9b2012-10-25 11:59:09 -0500125
126/include/ "ecx-common.dtsi"