|
1 /* |
|
2 * Device Tree Source for AMCC Bamboo |
|
3 * |
|
4 * Copyright (c) 2006, 2007 IBM Corp. |
|
5 * Josh Boyer <jwboyer@linux.vnet.ibm.com> |
|
6 * |
|
7 * This file is licensed under the terms of the GNU General Public |
|
8 * License version 2. This program is licensed "as is" without |
|
9 * any warranty of any kind, whether express or implied. |
|
10 */ |
|
11 |
|
12 / { |
|
13 #address-cells = <2>; |
|
14 #size-cells = <1>; |
|
15 model = "amcc,bamboo"; |
|
16 compatible = "amcc,bamboo"; |
|
17 dcr-parent = <&/cpus/cpu@0>; |
|
18 |
|
19 aliases { |
|
20 serial0 = &UART0; |
|
21 serial1 = &UART1; |
|
22 }; |
|
23 |
|
24 cpus { |
|
25 #address-cells = <1>; |
|
26 #size-cells = <0>; |
|
27 |
|
28 cpu@0 { |
|
29 device_type = "cpu"; |
|
30 model = "PowerPC,440EP"; |
|
31 reg = <0>; |
|
32 clock-frequency = <1fca0550>; |
|
33 timebase-frequency = <017d7840>; |
|
34 i-cache-line-size = <20>; |
|
35 d-cache-line-size = <20>; |
|
36 i-cache-size = <8000>; |
|
37 d-cache-size = <8000>; |
|
38 dcr-controller; |
|
39 dcr-access-method = "native"; |
|
40 }; |
|
41 }; |
|
42 |
|
43 memory { |
|
44 device_type = "memory"; |
|
45 reg = <0 0 9000000>; |
|
46 }; |
|
47 |
|
48 UIC0: interrupt-controller0 { |
|
49 compatible = "ibm,uic-440ep","ibm,uic"; |
|
50 interrupt-controller; |
|
51 cell-index = <0>; |
|
52 dcr-reg = <0c0 009>; |
|
53 #address-cells = <0>; |
|
54 #size-cells = <0>; |
|
55 #interrupt-cells = <2>; |
|
56 }; |
|
57 /* |
|
58 UIC1: interrupt-controller1 { |
|
59 compatible = "ibm,uic-440ep","ibm,uic"; |
|
60 interrupt-controller; |
|
61 cell-index = <1>; |
|
62 dcr-reg = <0d0 009>; |
|
63 #address-cells = <0>; |
|
64 #size-cells = <0>; |
|
65 #interrupt-cells = <2>; |
|
66 interrupts = <1e 4 1f 4>; |
|
67 interrupt-parent = <&UIC0>; |
|
68 }; |
|
69 */ |
|
70 |
|
71 SDR0: sdr { |
|
72 compatible = "ibm,sdr-440ep"; |
|
73 dcr-reg = <00e 002>; |
|
74 }; |
|
75 |
|
76 CPR0: cpr { |
|
77 compatible = "ibm,cpr-440ep"; |
|
78 dcr-reg = <00c 002>; |
|
79 }; |
|
80 |
|
81 plb { |
|
82 compatible = "ibm,plb-440ep", "ibm,plb-440gp", "ibm,plb4"; |
|
83 #address-cells = <2>; |
|
84 #size-cells = <1>; |
|
85 ranges; |
|
86 clock-frequency = <07f28154>; |
|
87 |
|
88 SDRAM0: sdram { |
|
89 compatible = "ibm,sdram-440ep", "ibm,sdram-405gp"; |
|
90 dcr-reg = <010 2>; |
|
91 }; |
|
92 |
|
93 DMA0: dma { |
|
94 compatible = "ibm,dma-440ep", "ibm,dma-440gp"; |
|
95 dcr-reg = <100 027>; |
|
96 }; |
|
97 |
|
98 POB0: opb { |
|
99 compatible = "ibm,opb-440ep", "ibm,opb-440gp", "ibm,opb"; |
|
100 #address-cells = <1>; |
|
101 #size-cells = <1>; |
|
102 /* Bamboo is oddball in the 44x world and doesn't use the ERPN |
|
103 * bits. |
|
104 */ |
|
105 ranges = <00000000 0 00000000 80000000 |
|
106 80000000 0 80000000 80000000>; |
|
107 /* interrupt-parent = <&UIC1>; */ |
|
108 interrupts = <7 4>; |
|
109 clock-frequency = <03f940aa>; |
|
110 |
|
111 EBC0: ebc { |
|
112 compatible = "ibm,ebc-440ep", "ibm,ebc-440gp", "ibm,ebc"; |
|
113 dcr-reg = <012 2>; |
|
114 #address-cells = <2>; |
|
115 #size-cells = <1>; |
|
116 clock-frequency = <03f940aa>; |
|
117 interrupts = <5 1>; |
|
118 /* interrupt-parent = <&UIC1>; */ |
|
119 }; |
|
120 |
|
121 UART0: serial@ef600300 { |
|
122 device_type = "serial"; |
|
123 compatible = "ns16550"; |
|
124 reg = <ef600300 8>; |
|
125 virtual-reg = <ef600300>; |
|
126 clock-frequency = <00a8c000>; |
|
127 current-speed = <1c200>; |
|
128 interrupt-parent = <&UIC0>; |
|
129 interrupts = <0 4>; |
|
130 }; |
|
131 |
|
132 UART1: serial@ef600400 { |
|
133 device_type = "serial"; |
|
134 compatible = "ns16550"; |
|
135 reg = <ef600400 8>; |
|
136 virtual-reg = <ef600400>; |
|
137 clock-frequency = <00a8c000>; |
|
138 current-speed = <0>; |
|
139 interrupt-parent = <&UIC0>; |
|
140 interrupts = <1 4>; |
|
141 }; |
|
142 /* |
|
143 UART2: serial@ef600500 { |
|
144 device_type = "serial"; |
|
145 compatible = "ns16550"; |
|
146 reg = <ef600500 8>; |
|
147 virtual-reg = <ef600500>; |
|
148 clock-frequency = <0>; |
|
149 current-speed = <0>; |
|
150 interrupt-parent = <&UIC0>; |
|
151 interrupts = <3 4>; |
|
152 }; |
|
153 |
|
154 UART3: serial@ef600600 { |
|
155 device_type = "serial"; |
|
156 compatible = "ns16550"; |
|
157 reg = <ef600600 8>; |
|
158 virtual-reg = <ef600600>; |
|
159 clock-frequency = <0>; |
|
160 current-speed = <0>; |
|
161 interrupt-parent = <&UIC0>; |
|
162 interrupts = <4 4>; |
|
163 }; |
|
164 |
|
165 */ |
|
166 IIC0: i2c@ef600700 { |
|
167 device_type = "i2c"; |
|
168 compatible = "ibm,iic-440ep", "ibm,iic-440gp", "ibm,iic"; |
|
169 reg = <ef600700 14>; |
|
170 interrupt-parent = <&UIC0>; |
|
171 interrupts = <2 4>; |
|
172 }; |
|
173 |
|
174 IIC1: i2c@ef600800 { |
|
175 device_type = "i2c"; |
|
176 compatible = "ibm,iic-440ep", "ibm,iic-440gp", "ibm,iic"; |
|
177 reg = <ef600800 14>; |
|
178 interrupt-parent = <&UIC0>; |
|
179 interrupts = <7 4>; |
|
180 }; |
|
181 |
|
182 ZMII0: emac-zmii@ef600d00 { |
|
183 device_type = "zmii-interface"; |
|
184 compatible = "ibm,zmii-440ep", "ibm,zmii-440gp", "ibm,zmii"; |
|
185 reg = <ef600d00 c>; |
|
186 }; |
|
187 |
|
188 }; |
|
189 |
|
190 PCI0: pci@ec000000 { |
|
191 device_type = "pci"; |
|
192 #interrupt-cells = <1>; |
|
193 #size-cells = <2>; |
|
194 #address-cells = <3>; |
|
195 compatible = "ibm,plb440ep-pci", "ibm,plb-pci"; |
|
196 primary; |
|
197 reg = <0 eec00000 8 /* Config space access */ |
|
198 0 eed00000 4 /* IACK */ |
|
199 0 eed00000 4 /* Special cycle */ |
|
200 0 ef400000 40>; /* Internal registers */ |
|
201 |
|
202 /* Outbound ranges, one memory and one IO, |
|
203 * later cannot be changed. Chip supports a second |
|
204 * IO range but we don't use it for now |
|
205 */ |
|
206 ranges = <02000000 0 a0000000 0 a0000000 0 20000000 |
|
207 01000000 0 00000000 0 e8000000 0 00010000>; |
|
208 |
|
209 /* Inbound 2GB range starting at 0 */ |
|
210 dma-ranges = <42000000 0 0 0 0 0 80000000>; |
|
211 |
|
212 /* Bamboo has all 4 IRQ pins tied together per slot */ |
|
213 interrupt-map-mask = <f800 0 0 0>; |
|
214 interrupt-map = < |
|
215 /* IDSEL 1 */ |
|
216 0800 0 0 0 &UIC0 1c 8 |
|
217 |
|
218 /* IDSEL 2 */ |
|
219 1000 0 0 0 &UIC0 1b 8 |
|
220 |
|
221 /* IDSEL 3 */ |
|
222 1800 0 0 0 &UIC0 1a 8 |
|
223 |
|
224 /* IDSEL 4 */ |
|
225 2000 0 0 0 &UIC0 19 8 |
|
226 >; |
|
227 }; |
|
228 |
|
229 }; |
|
230 |
|
231 chosen { |
|
232 linux,stdout-path = "/plb/opb/serial@ef600300"; |
|
233 }; |
|
234 }; |