Loading...
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright 2011-2012 Calxeda, Inc.
4 */
5
6/ {
7 chosen {
8 bootargs = "console=ttyAMA0";
9 };
10
11 psci {
12 compatible = "arm,psci";
13 method = "smc";
14 cpu_suspend = <0x84000002>;
15 cpu_off = <0x84000004>;
16 cpu_on = <0x84000006>;
17 };
18
19 soc {
20 #address-cells = <1>;
21 #size-cells = <1>;
22 compatible = "simple-bus";
23 interrupt-parent = <&intc>;
24
25 sata@ffe08000 {
26 compatible = "calxeda,hb-ahci";
27 reg = <0xffe08000 0x10000>;
28 interrupts = <0 83 4>;
29 dma-coherent;
30 calxeda,port-phys = < &combophy5 0>, <&combophy0 0>,
31 <&combophy0 1>, <&combophy0 2>,
32 <&combophy0 3>;
33 calxeda,sgpio-gpio =<&gpioh 5 1>, <&gpioh 6 1>,
34 <&gpioh 7 1>;
35 calxeda,led-order = <4 0 1 2 3>;
36 };
37
38 sdhci@ffe0e000 {
39 compatible = "calxeda,hb-sdhci";
40 reg = <0xffe0e000 0x1000>;
41 interrupts = <0 90 4>;
42 clocks = <&eclk>;
43 status = "disabled";
44 };
45
46 ipc@fff20000 {
47 compatible = "arm,pl320", "arm,primecell";
48 reg = <0xfff20000 0x1000>;
49 interrupts = <0 7 4>;
50 clocks = <&pclk>;
51 clock-names = "apb_pclk";
52 };
53
54 gpioe: gpio@fff30000 {
55 #gpio-cells = <2>;
56 compatible = "arm,pl061", "arm,primecell";
57 gpio-controller;
58 reg = <0xfff30000 0x1000>;
59 interrupts = <0 14 4>;
60 clocks = <&pclk>;
61 clock-names = "apb_pclk";
62 status = "disabled";
63 };
64
65 gpiof: gpio@fff31000 {
66 #gpio-cells = <2>;
67 compatible = "arm,pl061", "arm,primecell";
68 gpio-controller;
69 reg = <0xfff31000 0x1000>;
70 interrupts = <0 15 4>;
71 clocks = <&pclk>;
72 clock-names = "apb_pclk";
73 status = "disabled";
74 };
75
76 gpiog: gpio@fff32000 {
77 #gpio-cells = <2>;
78 compatible = "arm,pl061", "arm,primecell";
79 gpio-controller;
80 reg = <0xfff32000 0x1000>;
81 interrupts = <0 16 4>;
82 clocks = <&pclk>;
83 clock-names = "apb_pclk";
84 status = "disabled";
85 };
86
87 gpioh: gpio@fff33000 {
88 #gpio-cells = <2>;
89 compatible = "arm,pl061", "arm,primecell";
90 gpio-controller;
91 reg = <0xfff33000 0x1000>;
92 interrupts = <0 17 4>;
93 clocks = <&pclk>;
94 clock-names = "apb_pclk";
95 status = "disabled";
96 };
97
98 timer@fff34000 {
99 compatible = "arm,sp804", "arm,primecell";
100 reg = <0xfff34000 0x1000>;
101 interrupts = <0 18 4>;
102 clocks = <&pclk>;
103 clock-names = "apb_pclk";
104 };
105
106 rtc@fff35000 {
107 compatible = "arm,pl031", "arm,primecell";
108 reg = <0xfff35000 0x1000>;
109 interrupts = <0 19 4>;
110 clocks = <&pclk>;
111 clock-names = "apb_pclk";
112 };
113
114 serial@fff36000 {
115 compatible = "arm,pl011", "arm,primecell";
116 reg = <0xfff36000 0x1000>;
117 interrupts = <0 20 4>;
118 clocks = <&pclk>, <&pclk>;
119 clock-names = "uartclk", "apb_pclk";
120 };
121
122 smic@fff3a000 {
123 compatible = "ipmi-smic";
124 device_type = "ipmi";
125 reg = <0xfff3a000 0x1000>;
126 interrupts = <0 24 4>;
127 reg-size = <4>;
128 reg-spacing = <4>;
129 };
130
131 sregs@fff3c000 {
132 compatible = "calxeda,hb-sregs";
133 reg = <0xfff3c000 0x1000>;
134
135 clocks {
136 #address-cells = <1>;
137 #size-cells = <0>;
138
139 osc: oscillator {
140 #clock-cells = <0>;
141 compatible = "fixed-clock";
142 clock-frequency = <33333000>;
143 };
144
145 ddrpll: ddrpll {
146 #clock-cells = <0>;
147 compatible = "calxeda,hb-pll-clock";
148 clocks = <&osc>;
149 reg = <0x108>;
150 };
151
152 a9pll: a9pll {
153 #clock-cells = <0>;
154 compatible = "calxeda,hb-pll-clock";
155 clocks = <&osc>;
156 reg = <0x100>;
157 };
158
159 a9periphclk: a9periphclk {
160 #clock-cells = <0>;
161 compatible = "calxeda,hb-a9periph-clock";
162 clocks = <&a9pll>;
163 reg = <0x104>;
164 };
165
166 a9bclk: a9bclk {
167 #clock-cells = <0>;
168 compatible = "calxeda,hb-a9bus-clock";
169 clocks = <&a9pll>;
170 reg = <0x104>;
171 };
172
173 emmcpll: emmcpll {
174 #clock-cells = <0>;
175 compatible = "calxeda,hb-pll-clock";
176 clocks = <&osc>;
177 reg = <0x10C>;
178 };
179
180 eclk: eclk {
181 #clock-cells = <0>;
182 compatible = "calxeda,hb-emmc-clock";
183 clocks = <&emmcpll>;
184 reg = <0x114>;
185 };
186
187 pclk: pclk {
188 #clock-cells = <0>;
189 compatible = "fixed-clock";
190 clock-frequency = <150000000>;
191 };
192 };
193 };
194
195 dma@fff3d000 {
196 compatible = "arm,pl330", "arm,primecell";
197 reg = <0xfff3d000 0x1000>;
198 interrupts = <0 92 4>;
199 clocks = <&pclk>;
200 clock-names = "apb_pclk";
201 };
202
203 ethernet@fff50000 {
204 compatible = "calxeda,hb-xgmac";
205 reg = <0xfff50000 0x1000>;
206 interrupts = <0 77 4>, <0 78 4>, <0 79 4>;
207 dma-coherent;
208 };
209
210 ethernet@fff51000 {
211 compatible = "calxeda,hb-xgmac";
212 reg = <0xfff51000 0x1000>;
213 interrupts = <0 80 4>, <0 81 4>, <0 82 4>;
214 dma-coherent;
215 };
216
217 combophy0: combo-phy@fff58000 {
218 compatible = "calxeda,hb-combophy";
219 #phy-cells = <1>;
220 reg = <0xfff58000 0x1000>;
221 phydev = <5>;
222 };
223
224 combophy5: combo-phy@fff5d000 {
225 compatible = "calxeda,hb-combophy";
226 #phy-cells = <1>;
227 reg = <0xfff5d000 0x1000>;
228 phydev = <31>;
229 };
230 };
231};
1/*
2 * Copyright 2011-2012 Calxeda, Inc.
3 *
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/ {
18 chosen {
19 bootargs = "console=ttyAMA0";
20 };
21
22 psci {
23 compatible = "arm,psci";
24 method = "smc";
25 cpu_suspend = <0x84000002>;
26 cpu_off = <0x84000004>;
27 cpu_on = <0x84000006>;
28 };
29
30 soc {
31 #address-cells = <1>;
32 #size-cells = <1>;
33 compatible = "simple-bus";
34 interrupt-parent = <&intc>;
35
36 sata@ffe08000 {
37 compatible = "calxeda,hb-ahci";
38 reg = <0xffe08000 0x10000>;
39 interrupts = <0 83 4>;
40 dma-coherent;
41 calxeda,port-phys = <&combophy5 0 &combophy0 0
42 &combophy0 1 &combophy0 2
43 &combophy0 3>;
44 calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>;
45 calxeda,led-order = <4 0 1 2 3>;
46 };
47
48 sdhci@ffe0e000 {
49 compatible = "calxeda,hb-sdhci";
50 reg = <0xffe0e000 0x1000>;
51 interrupts = <0 90 4>;
52 clocks = <&eclk>;
53 status = "disabled";
54 };
55
56 ipc@fff20000 {
57 compatible = "arm,pl320", "arm,primecell";
58 reg = <0xfff20000 0x1000>;
59 interrupts = <0 7 4>;
60 clocks = <&pclk>;
61 clock-names = "apb_pclk";
62 };
63
64 gpioe: gpio@fff30000 {
65 #gpio-cells = <2>;
66 compatible = "arm,pl061", "arm,primecell";
67 gpio-controller;
68 reg = <0xfff30000 0x1000>;
69 interrupts = <0 14 4>;
70 clocks = <&pclk>;
71 clock-names = "apb_pclk";
72 status = "disabled";
73 };
74
75 gpiof: gpio@fff31000 {
76 #gpio-cells = <2>;
77 compatible = "arm,pl061", "arm,primecell";
78 gpio-controller;
79 reg = <0xfff31000 0x1000>;
80 interrupts = <0 15 4>;
81 clocks = <&pclk>;
82 clock-names = "apb_pclk";
83 status = "disabled";
84 };
85
86 gpiog: gpio@fff32000 {
87 #gpio-cells = <2>;
88 compatible = "arm,pl061", "arm,primecell";
89 gpio-controller;
90 reg = <0xfff32000 0x1000>;
91 interrupts = <0 16 4>;
92 clocks = <&pclk>;
93 clock-names = "apb_pclk";
94 status = "disabled";
95 };
96
97 gpioh: gpio@fff33000 {
98 #gpio-cells = <2>;
99 compatible = "arm,pl061", "arm,primecell";
100 gpio-controller;
101 reg = <0xfff33000 0x1000>;
102 interrupts = <0 17 4>;
103 clocks = <&pclk>;
104 clock-names = "apb_pclk";
105 status = "disabled";
106 };
107
108 timer@fff34000 {
109 compatible = "arm,sp804", "arm,primecell";
110 reg = <0xfff34000 0x1000>;
111 interrupts = <0 18 4>;
112 clocks = <&pclk>;
113 clock-names = "apb_pclk";
114 };
115
116 rtc@fff35000 {
117 compatible = "arm,pl031", "arm,primecell";
118 reg = <0xfff35000 0x1000>;
119 interrupts = <0 19 4>;
120 clocks = <&pclk>;
121 clock-names = "apb_pclk";
122 };
123
124 serial@fff36000 {
125 compatible = "arm,pl011", "arm,primecell";
126 reg = <0xfff36000 0x1000>;
127 interrupts = <0 20 4>;
128 clocks = <&pclk>;
129 clock-names = "apb_pclk";
130 };
131
132 smic@fff3a000 {
133 compatible = "ipmi-smic";
134 device_type = "ipmi";
135 reg = <0xfff3a000 0x1000>;
136 interrupts = <0 24 4>;
137 reg-size = <4>;
138 reg-spacing = <4>;
139 };
140
141 sregs@fff3c000 {
142 compatible = "calxeda,hb-sregs";
143 reg = <0xfff3c000 0x1000>;
144
145 clocks {
146 #address-cells = <1>;
147 #size-cells = <0>;
148
149 osc: oscillator {
150 #clock-cells = <0>;
151 compatible = "fixed-clock";
152 clock-frequency = <33333000>;
153 };
154
155 ddrpll: ddrpll {
156 #clock-cells = <0>;
157 compatible = "calxeda,hb-pll-clock";
158 clocks = <&osc>;
159 reg = <0x108>;
160 };
161
162 a9pll: a9pll {
163 #clock-cells = <0>;
164 compatible = "calxeda,hb-pll-clock";
165 clocks = <&osc>;
166 reg = <0x100>;
167 };
168
169 a9periphclk: a9periphclk {
170 #clock-cells = <0>;
171 compatible = "calxeda,hb-a9periph-clock";
172 clocks = <&a9pll>;
173 reg = <0x104>;
174 };
175
176 a9bclk: a9bclk {
177 #clock-cells = <0>;
178 compatible = "calxeda,hb-a9bus-clock";
179 clocks = <&a9pll>;
180 reg = <0x104>;
181 };
182
183 emmcpll: emmcpll {
184 #clock-cells = <0>;
185 compatible = "calxeda,hb-pll-clock";
186 clocks = <&osc>;
187 reg = <0x10C>;
188 };
189
190 eclk: eclk {
191 #clock-cells = <0>;
192 compatible = "calxeda,hb-emmc-clock";
193 clocks = <&emmcpll>;
194 reg = <0x114>;
195 };
196
197 pclk: pclk {
198 #clock-cells = <0>;
199 compatible = "fixed-clock";
200 clock-frequency = <150000000>;
201 };
202 };
203 };
204
205 dma@fff3d000 {
206 compatible = "arm,pl330", "arm,primecell";
207 reg = <0xfff3d000 0x1000>;
208 interrupts = <0 92 4>;
209 clocks = <&pclk>;
210 clock-names = "apb_pclk";
211 };
212
213 ethernet@fff50000 {
214 compatible = "calxeda,hb-xgmac";
215 reg = <0xfff50000 0x1000>;
216 interrupts = <0 77 4 0 78 4 0 79 4>;
217 dma-coherent;
218 };
219
220 ethernet@fff51000 {
221 compatible = "calxeda,hb-xgmac";
222 reg = <0xfff51000 0x1000>;
223 interrupts = <0 80 4 0 81 4 0 82 4>;
224 dma-coherent;
225 };
226
227 combophy0: combo-phy@fff58000 {
228 compatible = "calxeda,hb-combophy";
229 #phy-cells = <1>;
230 reg = <0xfff58000 0x1000>;
231 phydev = <5>;
232 };
233
234 combophy5: combo-phy@fff5d000 {
235 compatible = "calxeda,hb-combophy";
236 #phy-cells = <1>;
237 reg = <0xfff5d000 0x1000>;
238 phydev = <31>;
239 };
240 };
241};