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