diff options
author | Hugh Blemings <hugh@blemings.org> | 2007-12-20 23:39:28 -0500 |
---|---|---|
committer | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2007-12-23 14:13:33 -0500 |
commit | 6bbc5476298a3dd46a7a19c2af03778b094acb15 (patch) | |
tree | d88cbb289b92195f079d62f3695224b09865e855 /arch/powerpc | |
parent | 379865d63cb97f8e8241724aae48e795a6b7cb10 (diff) |
[POWERPC] 4xx: Base support for 440GX Taishan eval board
This patch adds base support for the AMCC Taishan 440GX evaluation
board.
Signed-off-by: Hugh Blemings <hugh@blemings.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/Kconfig.debug | 6 | ||||
-rw-r--r-- | arch/powerpc/boot/Makefile | 5 | ||||
-rw-r--r-- | arch/powerpc/boot/cuboot-taishan.c | 56 | ||||
-rw-r--r-- | arch/powerpc/boot/dts/taishan.dts | 375 | ||||
-rw-r--r-- | arch/powerpc/configs/taishan_defconfig | 787 | ||||
-rw-r--r-- | arch/powerpc/platforms/44x/Kconfig | 14 | ||||
-rw-r--r-- | arch/powerpc/platforms/44x/Makefile | 1 | ||||
-rw-r--r-- | arch/powerpc/platforms/44x/taishan.c | 74 |
8 files changed, 1316 insertions, 2 deletions
diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug index 179a453f7e04..db7cc34c24d4 100644 --- a/arch/powerpc/Kconfig.debug +++ b/arch/powerpc/Kconfig.debug | |||
@@ -225,7 +225,8 @@ config PPC_EARLY_DEBUG_44x | |||
225 | depends on 44x | 225 | depends on 44x |
226 | help | 226 | help |
227 | Select this to enable early debugging for IBM 44x chips via the | 227 | Select this to enable early debugging for IBM 44x chips via the |
228 | inbuilt serial port. | 228 | inbuilt serial port. If you enable this, ensure you set |
229 | PPC_EARLY_DEBUG_44x_PHYSLOW below to suit your target board. | ||
229 | 230 | ||
230 | config PPC_EARLY_DEBUG_40x | 231 | config PPC_EARLY_DEBUG_40x |
231 | bool "Early serial debugging for IBM/AMCC 40x CPUs" | 232 | bool "Early serial debugging for IBM/AMCC 40x CPUs" |
@@ -250,6 +251,9 @@ config PPC_EARLY_DEBUG_44x_PHYSLOW | |||
250 | hex "Low 32 bits of early debug UART physical address" | 251 | hex "Low 32 bits of early debug UART physical address" |
251 | depends on PPC_EARLY_DEBUG_44x | 252 | depends on PPC_EARLY_DEBUG_44x |
252 | default "0x40000200" | 253 | default "0x40000200" |
254 | help | ||
255 | You probably want 0x40000200 for ebony boards and | ||
256 | 0x40000300 for taishan | ||
253 | 257 | ||
254 | config PPC_EARLY_DEBUG_44x_PHYSHIGH | 258 | config PPC_EARLY_DEBUG_44x_PHYSHIGH |
255 | hex "EPRN of early debug UART physical address" | 259 | hex "EPRN of early debug UART physical address" |
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile index 8e5bdd35fd48..a20ad4bd7356 100644 --- a/arch/powerpc/boot/Makefile +++ b/arch/powerpc/boot/Makefile | |||
@@ -37,8 +37,10 @@ BOOTCFLAGS += -I$(obj) -I$(srctree)/$(obj) -I$(srctree)/$(src)/libfdt | |||
37 | 37 | ||
38 | $(obj)/4xx.o: BOOTCFLAGS += -mcpu=440 | 38 | $(obj)/4xx.o: BOOTCFLAGS += -mcpu=440 |
39 | $(obj)/ebony.o: BOOTCFLAGS += -mcpu=440 | 39 | $(obj)/ebony.o: BOOTCFLAGS += -mcpu=440 |
40 | $(obj)/cuboot-taishan.o: BOOTCFLAGS += -mcpu=440 | ||
40 | $(obj)/treeboot-walnut.o: BOOTCFLAGS += -mcpu=405 | 41 | $(obj)/treeboot-walnut.o: BOOTCFLAGS += -mcpu=405 |
41 | 42 | ||
43 | |||
42 | zlib := inffast.c inflate.c inftrees.c | 44 | zlib := inffast.c inflate.c inftrees.c |
43 | zlibheader := inffast.h inffixed.h inflate.h inftrees.h infutil.h | 45 | zlibheader := inffast.h inffixed.h inflate.h inftrees.h infutil.h |
44 | zliblinuxheader := zlib.h zconf.h zutil.h | 46 | zliblinuxheader := zlib.h zconf.h zutil.h |
@@ -58,7 +60,7 @@ src-plat := of.c cuboot-52xx.c cuboot-83xx.c cuboot-85xx.c holly.c \ | |||
58 | cuboot-ebony.c treeboot-ebony.c prpmc2800.c \ | 60 | cuboot-ebony.c treeboot-ebony.c prpmc2800.c \ |
59 | ps3-head.S ps3-hvcall.S ps3.c treeboot-bamboo.c cuboot-8xx.c \ | 61 | ps3-head.S ps3-hvcall.S ps3.c treeboot-bamboo.c cuboot-8xx.c \ |
60 | cuboot-pq2.c cuboot-sequoia.c treeboot-walnut.c cuboot-bamboo.c \ | 62 | cuboot-pq2.c cuboot-sequoia.c treeboot-walnut.c cuboot-bamboo.c \ |
61 | fixed-head.S ep88xc.c cuboot-hpc2.c ep405.c | 63 | fixed-head.S ep88xc.c cuboot-hpc2.c ep405.c cuboot-taishan.c |
62 | src-boot := $(src-wlib) $(src-plat) empty.c | 64 | src-boot := $(src-wlib) $(src-plat) empty.c |
63 | 65 | ||
64 | src-boot := $(addprefix $(obj)/, $(src-boot)) | 66 | src-boot := $(addprefix $(obj)/, $(src-boot)) |
@@ -199,6 +201,7 @@ image-$(CONFIG_EBONY) += treeImage.ebony cuImage.ebony | |||
199 | image-$(CONFIG_BAMBOO) += treeImage.bamboo cuImage.bamboo | 201 | image-$(CONFIG_BAMBOO) += treeImage.bamboo cuImage.bamboo |
200 | image-$(CONFIG_SEQUOIA) += cuImage.sequoia | 202 | image-$(CONFIG_SEQUOIA) += cuImage.sequoia |
201 | image-$(CONFIG_WALNUT) += treeImage.walnut | 203 | image-$(CONFIG_WALNUT) += treeImage.walnut |
204 | image-$(CONFIG_TAISHAN) += cuImage.taishan | ||
202 | endif | 205 | endif |
203 | 206 | ||
204 | # For 32-bit powermacs, build the COFF and miboot images | 207 | # For 32-bit powermacs, build the COFF and miboot images |
diff --git a/arch/powerpc/boot/cuboot-taishan.c b/arch/powerpc/boot/cuboot-taishan.c new file mode 100644 index 000000000000..4ef92021d012 --- /dev/null +++ b/arch/powerpc/boot/cuboot-taishan.c | |||
@@ -0,0 +1,56 @@ | |||
1 | /* | ||
2 | * Old U-boot compatibility for Taishan | ||
3 | * | ||
4 | * Author: Hugh Blemings <hugh@au.ibm.com> | ||
5 | * | ||
6 | * Copyright 2007 Hugh Blemings, IBM Corporation. | ||
7 | * Based on cuboot-ebony.c which is: | ||
8 | * Copyright 2007 David Gibson, IBM Corporation. | ||
9 | * Based on cuboot-83xx.c, which is: | ||
10 | * Copyright (c) 2007 Freescale Semiconductor, Inc. | ||
11 | * | ||
12 | * This program is free software; you can redistribute it and/or modify it | ||
13 | * under the terms of the GNU General Public License version 2 as published | ||
14 | * by the Free Software Foundation. | ||
15 | */ | ||
16 | |||
17 | #include "ops.h" | ||
18 | #include "stdio.h" | ||
19 | #include "cuboot.h" | ||
20 | #include "reg.h" | ||
21 | #include "dcr.h" | ||
22 | #include "4xx.h" | ||
23 | |||
24 | #define TARGET_44x | ||
25 | #include "ppcboot.h" | ||
26 | |||
27 | static bd_t bd; | ||
28 | |||
29 | BSS_STACK(4096); | ||
30 | |||
31 | static void taishan_fixups(void) | ||
32 | { | ||
33 | /* FIXME: sysclk should be derived by reading the FPGA | ||
34 | registers */ | ||
35 | unsigned long sysclk = 33000000; | ||
36 | |||
37 | /* 440EP Clock logic is all but identical to 440GX | ||
38 | so we just use that code for now at least */ | ||
39 | ibm440ep_fixup_clocks(sysclk, 6 * 1843200); | ||
40 | |||
41 | ibm4xx_fixup_memsize(); | ||
42 | |||
43 | dt_fixup_mac_addresses(bd.bi_enetaddr, bd.bi_enet1addr); | ||
44 | |||
45 | ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); | ||
46 | } | ||
47 | |||
48 | void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, | ||
49 | unsigned long r6, unsigned long r7) | ||
50 | { | ||
51 | CUBOOT_INIT(); | ||
52 | |||
53 | platform_ops.fixups = taishan_fixups; | ||
54 | fdt_init(_dtb_start); | ||
55 | serial_console_init(); | ||
56 | } | ||
diff --git a/arch/powerpc/boot/dts/taishan.dts b/arch/powerpc/boot/dts/taishan.dts new file mode 100644 index 000000000000..259972b594b2 --- /dev/null +++ b/arch/powerpc/boot/dts/taishan.dts | |||
@@ -0,0 +1,375 @@ | |||
1 | /* | ||
2 | * Device Tree Source for IBM/AMCC Taishan | ||
3 | * | ||
4 | * Copyright 2007 IBM Corp. | ||
5 | * Hugh Blemings <hugh@au.ibm.com> based off code by | ||
6 | * Josh Boyer <jwboyer@linux.vnet.ibm.com>, David Gibson <dwg@au1.ibm.com> | ||
7 | * | ||
8 | * This file is licensed under the terms of the GNU General Public | ||
9 | * License version 2. This program is licensed "as is" without | ||
10 | * any warranty of any kind, whether express or implied. | ||
11 | */ | ||
12 | |||
13 | / { | ||
14 | #address-cells = <2>; | ||
15 | #size-cells = <1>; | ||
16 | model = "amcc,taishan"; | ||
17 | compatible = "amcc,taishan"; | ||
18 | dcr-parent = <&/cpus/PowerPC,440GX@0>; | ||
19 | |||
20 | cpus { | ||
21 | #address-cells = <1>; | ||
22 | #size-cells = <0>; | ||
23 | |||
24 | PowerPC,440GX@0 { | ||
25 | device_type = "cpu"; | ||
26 | reg = <0>; | ||
27 | clock-frequency = <2FAF0800>; // 800MHz | ||
28 | timebase-frequency = <0>; // Filled in by zImage | ||
29 | i-cache-line-size = <32>; | ||
30 | d-cache-line-size = <32>; | ||
31 | i-cache-size = <8000>; /* 32 kB */ | ||
32 | d-cache-size = <8000>; /* 32 kB */ | ||
33 | dcr-controller; | ||
34 | dcr-access-method = "native"; | ||
35 | }; | ||
36 | }; | ||
37 | |||
38 | memory { | ||
39 | device_type = "memory"; | ||
40 | reg = <0 0 0>; // Filled in by zImage | ||
41 | }; | ||
42 | |||
43 | |||
44 | UICB0: interrupt-controller-base { | ||
45 | compatible = "ibm,uic-440gx", "ibm,uic"; | ||
46 | interrupt-controller; | ||
47 | cell-index = <3>; | ||
48 | dcr-reg = <200 009>; | ||
49 | #address-cells = <0>; | ||
50 | #size-cells = <0>; | ||
51 | #interrupt-cells = <2>; | ||
52 | }; | ||
53 | |||
54 | |||
55 | UIC0: interrupt-controller0 { | ||
56 | compatible = "ibm,uic-440gx", "ibm,uic"; | ||
57 | interrupt-controller; | ||
58 | cell-index = <0>; | ||
59 | dcr-reg = <0c0 009>; | ||
60 | #address-cells = <0>; | ||
61 | #size-cells = <0>; | ||
62 | #interrupt-cells = <2>; | ||
63 | interrupts = <01 4 00 4>; /* cascade - first non-critical */ | ||
64 | interrupt-parent = <&UICB0>; | ||
65 | |||
66 | }; | ||
67 | |||
68 | UIC1: interrupt-controller1 { | ||
69 | compatible = "ibm,uic-440gx", "ibm,uic"; | ||
70 | interrupt-controller; | ||
71 | cell-index = <1>; | ||
72 | dcr-reg = <0d0 009>; | ||
73 | #address-cells = <0>; | ||
74 | #size-cells = <0>; | ||
75 | #interrupt-cells = <2>; | ||
76 | interrupts = <03 4 02 4>; /* cascade */ | ||
77 | interrupt-parent = <&UICB0>; | ||
78 | }; | ||
79 | |||
80 | UIC2: interrupt-controller2 { | ||
81 | compatible = "ibm,uic-440gx", "ibm,uic"; | ||
82 | interrupt-controller; | ||
83 | cell-index = <2>; /* was 1 */ | ||
84 | dcr-reg = <210 009>; | ||
85 | #address-cells = <0>; | ||
86 | #size-cells = <0>; | ||
87 | #interrupt-cells = <2>; | ||
88 | interrupts = <05 4 04 4>; /* cascade */ | ||
89 | interrupt-parent = <&UICB0>; | ||
90 | }; | ||
91 | |||
92 | |||
93 | CPC0: cpc { | ||
94 | compatible = "ibm,cpc-440gp"; | ||
95 | dcr-reg = <0b0 003 0e0 010>; | ||
96 | // FIXME: anything else? | ||
97 | }; | ||
98 | |||
99 | plb { | ||
100 | compatible = "ibm,plb-440gx", "ibm,plb4"; | ||
101 | #address-cells = <2>; | ||
102 | #size-cells = <1>; | ||
103 | ranges; | ||
104 | clock-frequency = <9896800>; // 160MHz | ||
105 | |||
106 | SDRAM0: memory-controller { | ||
107 | compatible = "ibm,sdram-440gp"; | ||
108 | dcr-reg = <010 2>; | ||
109 | // FIXME: anything else? | ||
110 | }; | ||
111 | |||
112 | SRAM0: sram { | ||
113 | compatible = "ibm,sram-440gp"; | ||
114 | dcr-reg = <020 8 00a 1>; | ||
115 | }; | ||
116 | |||
117 | DMA0: dma { | ||
118 | // FIXME: ??? | ||
119 | compatible = "ibm,dma-440gp"; | ||
120 | dcr-reg = <100 027>; | ||
121 | }; | ||
122 | |||
123 | MAL0: mcmal { | ||
124 | compatible = "ibm,mcmal-440gx", "ibm,mcmal2"; | ||
125 | dcr-reg = <180 62>; | ||
126 | num-tx-chans = <4>; | ||
127 | num-rx-chans = <4>; | ||
128 | interrupt-parent = <&MAL0>; | ||
129 | interrupts = <0 1 2 3 4>; | ||
130 | #interrupt-cells = <1>; | ||
131 | #address-cells = <0>; | ||
132 | #size-cells = <0>; | ||
133 | interrupt-map = </*TXEOB*/ 0 &UIC0 a 4 | ||
134 | /*RXEOB*/ 1 &UIC0 b 4 | ||
135 | /*SERR*/ 2 &UIC1 0 4 | ||
136 | /*TXDE*/ 3 &UIC1 1 4 | ||
137 | /*RXDE*/ 4 &UIC1 2 4>; | ||
138 | interrupt-map-mask = <ffffffff>; | ||
139 | }; | ||
140 | |||
141 | POB0: opb { | ||
142 | compatible = "ibm,opb-440gx", "ibm,opb"; | ||
143 | #address-cells = <1>; | ||
144 | #size-cells = <1>; | ||
145 | /* Wish there was a nicer way of specifying a full 32-bit | ||
146 | range */ | ||
147 | ranges = <00000000 1 00000000 80000000 | ||
148 | 80000000 1 80000000 80000000>; | ||
149 | dcr-reg = <090 00b>; | ||
150 | interrupt-parent = <&UIC1>; | ||
151 | interrupts = <7 4>; | ||
152 | clock-frequency = <4C4B400>; // 80MHz | ||
153 | |||
154 | |||
155 | EBC0: ebc { | ||
156 | compatible = "ibm,ebc-440gx", "ibm,ebc"; | ||
157 | dcr-reg = <012 2>; | ||
158 | #address-cells = <2>; | ||
159 | #size-cells = <1>; | ||
160 | clock-frequency = <4C4B400>; // 80MHz | ||
161 | |||
162 | /* ranges property is supplied by zImage | ||
163 | * based on firmware's configuration of the | ||
164 | * EBC bridge */ | ||
165 | |||
166 | interrupts = <5 4>; | ||
167 | interrupt-parent = <&UIC1>; | ||
168 | |||
169 | /* TODO: Add other EBC devices */ | ||
170 | }; | ||
171 | |||
172 | |||
173 | |||
174 | UART0: serial@40000200 { | ||
175 | device_type = "serial"; | ||
176 | compatible = "ns16550"; | ||
177 | reg = <40000200 8>; | ||
178 | virtual-reg = <e0000200>; | ||
179 | clock-frequency = <A8C000>; | ||
180 | current-speed = <1C200>; /* 115200 */ | ||
181 | interrupt-parent = <&UIC0>; | ||
182 | interrupts = <0 4>; | ||
183 | }; | ||
184 | |||
185 | UART1: serial@40000300 { | ||
186 | device_type = "serial"; | ||
187 | compatible = "ns16550"; | ||
188 | reg = <40000300 8>; | ||
189 | virtual-reg = <e0000300>; | ||
190 | clock-frequency = <A8C000>; | ||
191 | current-speed = <1C200>; /* 115200 */ | ||
192 | interrupt-parent = <&UIC0>; | ||
193 | interrupts = <1 4>; | ||
194 | }; | ||
195 | |||
196 | IIC0: i2c@40000400 { | ||
197 | /* FIXME */ | ||
198 | device_type = "i2c"; | ||
199 | compatible = "ibm,iic-440gp", "ibm,iic"; | ||
200 | reg = <40000400 14>; | ||
201 | interrupt-parent = <&UIC0>; | ||
202 | interrupts = <2 4>; | ||
203 | }; | ||
204 | IIC1: i2c@40000500 { | ||
205 | /* FIXME */ | ||
206 | device_type = "i2c"; | ||
207 | compatible = "ibm,iic-440gp", "ibm,iic"; | ||
208 | reg = <40000500 14>; | ||
209 | interrupt-parent = <&UIC0>; | ||
210 | interrupts = <3 4>; | ||
211 | }; | ||
212 | |||
213 | GPIO0: gpio@40000700 { | ||
214 | /* FIXME */ | ||
215 | compatible = "ibm,gpio-440gp"; | ||
216 | reg = <40000700 20>; | ||
217 | }; | ||
218 | |||
219 | ZMII0: emac-zmii@40000780 { | ||
220 | device_type = "zgmii-interface"; | ||
221 | compatible = "ibm,zmii-440gx", "ibm,zmii"; | ||
222 | reg = <40000780 c>; | ||
223 | }; | ||
224 | |||
225 | RGMII0: emac-rgmii@40000790 { | ||
226 | device_type = "rgmii-interface"; | ||
227 | compatible = "ibm,rgmii"; | ||
228 | reg = <40000790 8>; | ||
229 | }; | ||
230 | |||
231 | |||
232 | EMAC0: ethernet@40000800 { | ||
233 | unused = <1>; | ||
234 | linux,network-index = <2>; | ||
235 | device_type = "network"; | ||
236 | compatible = "ibm,emac-440gx", "ibm,emac4"; | ||
237 | interrupt-parent = <&UIC1>; | ||
238 | interrupts = <1c 4 1d 4>; | ||
239 | reg = <40000800 70>; | ||
240 | local-mac-address = [000000000000]; // Filled in by zImage | ||
241 | mal-device = <&MAL0>; | ||
242 | mal-tx-channel = <0>; | ||
243 | mal-rx-channel = <0>; | ||
244 | cell-index = <0>; | ||
245 | max-frame-size = <5dc>; | ||
246 | rx-fifo-size = <1000>; | ||
247 | tx-fifo-size = <800>; | ||
248 | phy-mode = "rmii"; | ||
249 | phy-map = <00000001>; | ||
250 | zmii-device = <&ZMII0>; | ||
251 | zmii-channel = <0>; | ||
252 | }; | ||
253 | EMAC1: ethernet@40000900 { | ||
254 | unused = <1>; | ||
255 | linux,network-index = <3>; | ||
256 | device_type = "network"; | ||
257 | compatible = "ibm,emac-440gx", "ibm,emac4"; | ||
258 | interrupt-parent = <&UIC1>; | ||
259 | interrupts = <1e 4 1f 4>; | ||
260 | reg = <40000900 70>; | ||
261 | local-mac-address = [000000000000]; // Filled in by zImage | ||
262 | mal-device = <&MAL0>; | ||
263 | mal-tx-channel = <1>; | ||
264 | mal-rx-channel = <1>; | ||
265 | cell-index = <1>; | ||
266 | max-frame-size = <5dc>; | ||
267 | rx-fifo-size = <1000>; | ||
268 | tx-fifo-size = <800>; | ||
269 | phy-mode = "rmii"; | ||
270 | phy-map = <00000001>; | ||
271 | zmii-device = <&ZMII0>; | ||
272 | zmii-channel = <1>; | ||
273 | }; | ||
274 | |||
275 | EMAC2: ethernet@40000c00 { | ||
276 | linux,network-index = <0>; | ||
277 | device_type = "network"; | ||
278 | compatible = "ibm,emac-440gx", "ibm,emac4"; | ||
279 | interrupt-parent = <&UIC2>; | ||
280 | interrupts = <0 4 1 4>; | ||
281 | reg = <40000c00 70>; | ||
282 | local-mac-address = [000000000000]; // Filled in by zImage | ||
283 | mal-device = <&MAL0>; | ||
284 | mal-tx-channel = <2>; | ||
285 | mal-rx-channel = <2>; | ||
286 | cell-index = <2>; | ||
287 | max-frame-size = <5dc>; | ||
288 | rx-fifo-size = <1000>; | ||
289 | tx-fifo-size = <800>; | ||
290 | phy-mode = "rgmii"; | ||
291 | phy-map = <00000001>; | ||
292 | rgmii-device = <&RGMII0>; | ||
293 | rgmii-channel = <0>; | ||
294 | zmii-device = <&ZMII0>; | ||
295 | zmii-channel = <2>; | ||
296 | }; | ||
297 | |||
298 | EMAC3: ethernet@40000e00 { | ||
299 | linux,network-index = <1>; | ||
300 | device_type = "network"; | ||
301 | compatible = "ibm,emac-440gx", "ibm,emac4"; | ||
302 | interrupt-parent = <&UIC2>; | ||
303 | interrupts = <2 4 3 4>; | ||
304 | reg = <40000e00 70>; | ||
305 | local-mac-address = [000000000000]; // Filled in by zImage | ||
306 | mal-device = <&MAL0>; | ||
307 | mal-tx-channel = <3>; | ||
308 | mal-rx-channel = <3>; | ||
309 | cell-index = <3>; | ||
310 | max-frame-size = <5dc>; | ||
311 | rx-fifo-size = <1000>; | ||
312 | tx-fifo-size = <800>; | ||
313 | phy-mode = "rgmii"; | ||
314 | phy-map = <00000003>; | ||
315 | rgmii-device = <&RGMII0>; | ||
316 | rgmii-channel = <1>; | ||
317 | zmii-device = <&ZMII0>; | ||
318 | zmii-channel = <3>; | ||
319 | }; | ||
320 | |||
321 | |||
322 | GPT0: gpt@40000a00 { | ||
323 | /* FIXME */ | ||
324 | reg = <40000a00 d4>; | ||
325 | interrupt-parent = <&UIC0>; | ||
326 | interrupts = <12 4 13 4 14 4 15 4 16 4>; | ||
327 | }; | ||
328 | |||
329 | }; | ||
330 | |||
331 | PCIX0: pci@20ec00000 { | ||
332 | device_type = "pci"; | ||
333 | #interrupt-cells = <1>; | ||
334 | #size-cells = <2>; | ||
335 | #address-cells = <3>; | ||
336 | compatible = "ibm,plb440gp-pcix", "ibm,plb-pcix"; | ||
337 | primary; | ||
338 | large-inbound-windows; | ||
339 | enable-msi-hole; | ||
340 | reg = <2 0ec00000 8 /* Config space access */ | ||
341 | 0 0 0 /* no IACK cycles */ | ||
342 | 2 0ed00000 4 /* Special cycles */ | ||
343 | 2 0ec80000 100 /* Internal registers */ | ||
344 | 2 0ec80100 fc>; /* Internal messaging registers */ | ||
345 | |||
346 | /* Outbound ranges, one memory and one IO, | ||
347 | * later cannot be changed | ||
348 | */ | ||
349 | ranges = <02000000 0 80000000 00000003 80000000 0 80000000 | ||
350 | 01000000 0 00000000 00000002 08000000 0 00010000>; | ||
351 | |||
352 | /* Inbound 2GB range starting at 0 */ | ||
353 | dma-ranges = <42000000 0 0 0 0 0 80000000>; | ||
354 | |||
355 | interrupt-map-mask = <f800 0 0 7>; | ||
356 | interrupt-map = < | ||
357 | /* IDSEL 1 */ | ||
358 | 0800 0 0 1 &UIC0 17 8 | ||
359 | 0800 0 0 2 &UIC0 18 8 | ||
360 | 0800 0 0 3 &UIC0 19 8 | ||
361 | 0800 0 0 4 &UIC0 1a 8 | ||
362 | |||
363 | /* IDSEL 2 */ | ||
364 | 1000 0 0 1 &UIC0 18 8 | ||
365 | 1000 0 0 2 &UIC0 19 8 | ||
366 | 1000 0 0 3 &UIC0 1a 8 | ||
367 | 1000 0 0 4 &UIC0 17 8 | ||
368 | >; | ||
369 | }; | ||
370 | }; | ||
371 | |||
372 | chosen { | ||
373 | linux,stdout-path = "/plb/opb/serial@40000300"; | ||
374 | }; | ||
375 | }; | ||
diff --git a/arch/powerpc/configs/taishan_defconfig b/arch/powerpc/configs/taishan_defconfig new file mode 100644 index 000000000000..c796582d1557 --- /dev/null +++ b/arch/powerpc/configs/taishan_defconfig | |||
@@ -0,0 +1,787 @@ | |||
1 | # | ||
2 | # Automatically generated make config: don't edit | ||
3 | # Linux kernel version: 2.6.24-rc4 | ||
4 | # Tue Dec 11 16:44:44 2007 | ||
5 | # | ||
6 | # CONFIG_PPC64 is not set | ||
7 | |||
8 | # | ||
9 | # Processor support | ||
10 | # | ||
11 | # CONFIG_6xx is not set | ||
12 | # CONFIG_PPC_85xx is not set | ||
13 | # CONFIG_PPC_8xx is not set | ||
14 | # CONFIG_40x is not set | ||
15 | CONFIG_44x=y | ||
16 | # CONFIG_E200 is not set | ||
17 | CONFIG_4xx=y | ||
18 | CONFIG_BOOKE=y | ||
19 | CONFIG_PTE_64BIT=y | ||
20 | CONFIG_PHYS_64BIT=y | ||
21 | # CONFIG_PPC_MM_SLICES is not set | ||
22 | CONFIG_NOT_COHERENT_CACHE=y | ||
23 | CONFIG_PPC32=y | ||
24 | CONFIG_WORD_SIZE=32 | ||
25 | CONFIG_PPC_MERGE=y | ||
26 | CONFIG_MMU=y | ||
27 | CONFIG_GENERIC_CMOS_UPDATE=y | ||
28 | CONFIG_GENERIC_TIME=y | ||
29 | CONFIG_GENERIC_TIME_VSYSCALL=y | ||
30 | CONFIG_GENERIC_CLOCKEVENTS=y | ||
31 | CONFIG_GENERIC_HARDIRQS=y | ||
32 | CONFIG_IRQ_PER_CPU=y | ||
33 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | ||
34 | CONFIG_ARCH_HAS_ILOG2_U32=y | ||
35 | CONFIG_GENERIC_HWEIGHT=y | ||
36 | CONFIG_GENERIC_CALIBRATE_DELAY=y | ||
37 | CONFIG_GENERIC_FIND_NEXT_BIT=y | ||
38 | # CONFIG_ARCH_NO_VIRT_TO_BUS is not set | ||
39 | CONFIG_PPC=y | ||
40 | CONFIG_EARLY_PRINTK=y | ||
41 | CONFIG_GENERIC_NVRAM=y | ||
42 | CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y | ||
43 | CONFIG_ARCH_MAY_HAVE_PC_FDC=y | ||
44 | CONFIG_PPC_OF=y | ||
45 | CONFIG_OF=y | ||
46 | CONFIG_PPC_UDBG_16550=y | ||
47 | # CONFIG_GENERIC_TBSYNC is not set | ||
48 | CONFIG_AUDIT_ARCH=y | ||
49 | CONFIG_GENERIC_BUG=y | ||
50 | # CONFIG_DEFAULT_UIMAGE is not set | ||
51 | CONFIG_PPC_DCR_NATIVE=y | ||
52 | # CONFIG_PPC_DCR_MMIO is not set | ||
53 | CONFIG_PPC_DCR=y | ||
54 | CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" | ||
55 | |||
56 | # | ||
57 | # General setup | ||
58 | # | ||
59 | CONFIG_EXPERIMENTAL=y | ||
60 | CONFIG_BROKEN_ON_SMP=y | ||
61 | CONFIG_INIT_ENV_ARG_LIMIT=32 | ||
62 | CONFIG_LOCALVERSION="" | ||
63 | CONFIG_LOCALVERSION_AUTO=y | ||
64 | CONFIG_SWAP=y | ||
65 | CONFIG_SYSVIPC=y | ||
66 | CONFIG_SYSVIPC_SYSCTL=y | ||
67 | CONFIG_POSIX_MQUEUE=y | ||
68 | # CONFIG_BSD_PROCESS_ACCT is not set | ||
69 | # CONFIG_TASKSTATS is not set | ||
70 | # CONFIG_USER_NS is not set | ||
71 | # CONFIG_PID_NS is not set | ||
72 | # CONFIG_AUDIT is not set | ||
73 | # CONFIG_IKCONFIG is not set | ||
74 | CONFIG_LOG_BUF_SHIFT=14 | ||
75 | # CONFIG_CGROUPS is not set | ||
76 | CONFIG_FAIR_GROUP_SCHED=y | ||
77 | CONFIG_FAIR_USER_SCHED=y | ||
78 | # CONFIG_FAIR_CGROUP_SCHED is not set | ||
79 | CONFIG_SYSFS_DEPRECATED=y | ||
80 | # CONFIG_RELAY is not set | ||
81 | CONFIG_BLK_DEV_INITRD=y | ||
82 | CONFIG_INITRAMFS_SOURCE="" | ||
83 | # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set | ||
84 | CONFIG_SYSCTL=y | ||
85 | CONFIG_EMBEDDED=y | ||
86 | CONFIG_SYSCTL_SYSCALL=y | ||
87 | CONFIG_KALLSYMS=y | ||
88 | # CONFIG_KALLSYMS_ALL is not set | ||
89 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | ||
90 | CONFIG_HOTPLUG=y | ||
91 | CONFIG_PRINTK=y | ||
92 | CONFIG_BUG=y | ||
93 | CONFIG_ELF_CORE=y | ||
94 | CONFIG_BASE_FULL=y | ||
95 | CONFIG_FUTEX=y | ||
96 | CONFIG_ANON_INODES=y | ||
97 | CONFIG_EPOLL=y | ||
98 | CONFIG_SIGNALFD=y | ||
99 | CONFIG_EVENTFD=y | ||
100 | CONFIG_SHMEM=y | ||
101 | CONFIG_VM_EVENT_COUNTERS=y | ||
102 | CONFIG_SLUB_DEBUG=y | ||
103 | # CONFIG_SLAB is not set | ||
104 | CONFIG_SLUB=y | ||
105 | # CONFIG_SLOB is not set | ||
106 | CONFIG_RT_MUTEXES=y | ||
107 | # CONFIG_TINY_SHMEM is not set | ||
108 | CONFIG_BASE_SMALL=0 | ||
109 | CONFIG_MODULES=y | ||
110 | CONFIG_MODULE_UNLOAD=y | ||
111 | # CONFIG_MODULE_FORCE_UNLOAD is not set | ||
112 | # CONFIG_MODVERSIONS is not set | ||
113 | # CONFIG_MODULE_SRCVERSION_ALL is not set | ||
114 | CONFIG_KMOD=y | ||
115 | CONFIG_BLOCK=y | ||
116 | CONFIG_LBD=y | ||
117 | # CONFIG_BLK_DEV_IO_TRACE is not set | ||
118 | # CONFIG_LSF is not set | ||
119 | # CONFIG_BLK_DEV_BSG is not set | ||
120 | |||
121 | # | ||
122 | # IO Schedulers | ||
123 | # | ||
124 | CONFIG_IOSCHED_NOOP=y | ||
125 | CONFIG_IOSCHED_AS=y | ||
126 | CONFIG_IOSCHED_DEADLINE=y | ||
127 | CONFIG_IOSCHED_CFQ=y | ||
128 | CONFIG_DEFAULT_AS=y | ||
129 | # CONFIG_DEFAULT_DEADLINE is not set | ||
130 | # CONFIG_DEFAULT_CFQ is not set | ||
131 | # CONFIG_DEFAULT_NOOP is not set | ||
132 | CONFIG_DEFAULT_IOSCHED="anticipatory" | ||
133 | # CONFIG_PPC4xx_PCI_EXPRESS is not set | ||
134 | |||
135 | # | ||
136 | # Platform support | ||
137 | # | ||
138 | # CONFIG_PPC_MPC52xx is not set | ||
139 | # CONFIG_PPC_MPC5200 is not set | ||
140 | # CONFIG_PPC_CELL is not set | ||
141 | # CONFIG_PPC_CELL_NATIVE is not set | ||
142 | # CONFIG_PQ2ADS is not set | ||
143 | # CONFIG_BAMBOO is not set | ||
144 | # CONFIG_EBONY is not set | ||
145 | # CONFIG_SEQUOIA is not set | ||
146 | CONFIG_TAISHAN=y | ||
147 | CONFIG_440GX=y | ||
148 | # CONFIG_MPIC is not set | ||
149 | # CONFIG_MPIC_WEIRD is not set | ||
150 | # CONFIG_PPC_I8259 is not set | ||
151 | # CONFIG_PPC_RTAS is not set | ||
152 | # CONFIG_MMIO_NVRAM is not set | ||
153 | # CONFIG_PPC_MPC106 is not set | ||
154 | # CONFIG_PPC_970_NAP is not set | ||
155 | # CONFIG_PPC_INDIRECT_IO is not set | ||
156 | # CONFIG_GENERIC_IOMAP is not set | ||
157 | # CONFIG_CPU_FREQ is not set | ||
158 | # CONFIG_CPM2 is not set | ||
159 | # CONFIG_FSL_ULI1575 is not set | ||
160 | |||
161 | # | ||
162 | # Kernel options | ||
163 | # | ||
164 | # CONFIG_HIGHMEM is not set | ||
165 | # CONFIG_TICK_ONESHOT is not set | ||
166 | # CONFIG_NO_HZ is not set | ||
167 | # CONFIG_HIGH_RES_TIMERS is not set | ||
168 | CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | ||
169 | # CONFIG_HZ_100 is not set | ||
170 | CONFIG_HZ_250=y | ||
171 | # CONFIG_HZ_300 is not set | ||
172 | # CONFIG_HZ_1000 is not set | ||
173 | CONFIG_HZ=250 | ||
174 | CONFIG_PREEMPT_NONE=y | ||
175 | # CONFIG_PREEMPT_VOLUNTARY is not set | ||
176 | # CONFIG_PREEMPT is not set | ||
177 | CONFIG_BINFMT_ELF=y | ||
178 | # CONFIG_BINFMT_MISC is not set | ||
179 | # CONFIG_MATH_EMULATION is not set | ||
180 | CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y | ||
181 | CONFIG_ARCH_FLATMEM_ENABLE=y | ||
182 | CONFIG_ARCH_POPULATES_NODE_MAP=y | ||
183 | CONFIG_SELECT_MEMORY_MODEL=y | ||
184 | CONFIG_FLATMEM_MANUAL=y | ||
185 | # CONFIG_DISCONTIGMEM_MANUAL is not set | ||
186 | # CONFIG_SPARSEMEM_MANUAL is not set | ||
187 | CONFIG_FLATMEM=y | ||
188 | CONFIG_FLAT_NODE_MEM_MAP=y | ||
189 | # CONFIG_SPARSEMEM_STATIC is not set | ||
190 | # CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set | ||
191 | CONFIG_SPLIT_PTLOCK_CPUS=4 | ||
192 | CONFIG_RESOURCES_64BIT=y | ||
193 | CONFIG_ZONE_DMA_FLAG=1 | ||
194 | CONFIG_BOUNCE=y | ||
195 | CONFIG_VIRT_TO_BUS=y | ||
196 | CONFIG_PROC_DEVICETREE=y | ||
197 | CONFIG_CMDLINE_BOOL=y | ||
198 | CONFIG_CMDLINE="" | ||
199 | CONFIG_SECCOMP=y | ||
200 | CONFIG_WANT_DEVICE_TREE=y | ||
201 | CONFIG_DEVICE_TREE="taishan.dts" | ||
202 | CONFIG_ISA_DMA_API=y | ||
203 | |||
204 | # | ||
205 | # Bus options | ||
206 | # | ||
207 | CONFIG_ZONE_DMA=y | ||
208 | CONFIG_PPC_INDIRECT_PCI=y | ||
209 | CONFIG_PCI=y | ||
210 | CONFIG_PCI_DOMAINS=y | ||
211 | CONFIG_PCI_SYSCALL=y | ||
212 | # CONFIG_PCIEPORTBUS is not set | ||
213 | CONFIG_ARCH_SUPPORTS_MSI=y | ||
214 | # CONFIG_PCI_MSI is not set | ||
215 | CONFIG_PCI_LEGACY=y | ||
216 | # CONFIG_PCI_DEBUG is not set | ||
217 | # CONFIG_PCCARD is not set | ||
218 | # CONFIG_HOTPLUG_PCI is not set | ||
219 | |||
220 | # | ||
221 | # Advanced setup | ||
222 | # | ||
223 | # CONFIG_ADVANCED_OPTIONS is not set | ||
224 | |||
225 | # | ||
226 | # Default settings for advanced configuration options are used | ||
227 | # | ||
228 | CONFIG_HIGHMEM_START=0xfe000000 | ||
229 | CONFIG_LOWMEM_SIZE=0x30000000 | ||
230 | CONFIG_KERNEL_START=0xc0000000 | ||
231 | CONFIG_TASK_SIZE=0xc0000000 | ||
232 | CONFIG_CONSISTENT_START=0xff100000 | ||
233 | CONFIG_CONSISTENT_SIZE=0x00200000 | ||
234 | CONFIG_BOOT_LOAD=0x01000000 | ||
235 | |||
236 | # | ||
237 | # Networking | ||
238 | # | ||
239 | CONFIG_NET=y | ||
240 | |||
241 | # | ||
242 | # Networking options | ||
243 | # | ||
244 | CONFIG_PACKET=y | ||
245 | # CONFIG_PACKET_MMAP is not set | ||
246 | CONFIG_UNIX=y | ||
247 | # CONFIG_NET_KEY is not set | ||
248 | CONFIG_INET=y | ||
249 | # CONFIG_IP_MULTICAST is not set | ||
250 | # CONFIG_IP_ADVANCED_ROUTER is not set | ||
251 | CONFIG_IP_FIB_HASH=y | ||
252 | CONFIG_IP_PNP=y | ||
253 | CONFIG_IP_PNP_DHCP=y | ||
254 | CONFIG_IP_PNP_BOOTP=y | ||
255 | # CONFIG_IP_PNP_RARP is not set | ||
256 | # CONFIG_NET_IPIP is not set | ||
257 | # CONFIG_NET_IPGRE is not set | ||
258 | # CONFIG_ARPD is not set | ||
259 | # CONFIG_SYN_COOKIES is not set | ||
260 | # CONFIG_INET_AH is not set | ||
261 | # CONFIG_INET_ESP is not set | ||
262 | # CONFIG_INET_IPCOMP is not set | ||
263 | # CONFIG_INET_XFRM_TUNNEL is not set | ||
264 | # CONFIG_INET_TUNNEL is not set | ||
265 | # CONFIG_INET_XFRM_MODE_TRANSPORT is not set | ||
266 | # CONFIG_INET_XFRM_MODE_TUNNEL is not set | ||
267 | # CONFIG_INET_XFRM_MODE_BEET is not set | ||
268 | # CONFIG_INET_LRO is not set | ||
269 | CONFIG_INET_DIAG=y | ||
270 | CONFIG_INET_TCP_DIAG=y | ||
271 | # CONFIG_TCP_CONG_ADVANCED is not set | ||
272 | CONFIG_TCP_CONG_CUBIC=y | ||
273 | CONFIG_DEFAULT_TCP_CONG="cubic" | ||
274 | # CONFIG_TCP_MD5SIG is not set | ||
275 | # CONFIG_IPV6 is not set | ||
276 | # CONFIG_INET6_XFRM_TUNNEL is not set | ||
277 | # CONFIG_INET6_TUNNEL is not set | ||
278 | # CONFIG_NETWORK_SECMARK is not set | ||
279 | # CONFIG_NETFILTER is not set | ||
280 | # CONFIG_IP_DCCP is not set | ||
281 | # CONFIG_IP_SCTP is not set | ||
282 | # CONFIG_TIPC is not set | ||
283 | # CONFIG_ATM is not set | ||
284 | # CONFIG_BRIDGE is not set | ||
285 | # CONFIG_VLAN_8021Q is not set | ||
286 | # CONFIG_DECNET is not set | ||
287 | # CONFIG_LLC2 is not set | ||
288 | # CONFIG_IPX is not set | ||
289 | # CONFIG_ATALK is not set | ||
290 | # CONFIG_X25 is not set | ||
291 | # CONFIG_LAPB is not set | ||
292 | # CONFIG_ECONET is not set | ||
293 | # CONFIG_WAN_ROUTER is not set | ||
294 | # CONFIG_NET_SCHED is not set | ||
295 | |||
296 | # | ||
297 | # Network testing | ||
298 | # | ||
299 | # CONFIG_NET_PKTGEN is not set | ||
300 | # CONFIG_HAMRADIO is not set | ||
301 | # CONFIG_IRDA is not set | ||
302 | # CONFIG_BT is not set | ||
303 | # CONFIG_AF_RXRPC is not set | ||
304 | |||
305 | # | ||
306 | # Wireless | ||
307 | # | ||
308 | # CONFIG_CFG80211 is not set | ||
309 | # CONFIG_WIRELESS_EXT is not set | ||
310 | # CONFIG_MAC80211 is not set | ||
311 | # CONFIG_IEEE80211 is not set | ||
312 | # CONFIG_RFKILL is not set | ||
313 | # CONFIG_NET_9P is not set | ||
314 | |||
315 | # | ||
316 | # Device Drivers | ||
317 | # | ||
318 | |||
319 | # | ||
320 | # Generic Driver Options | ||
321 | # | ||
322 | CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" | ||
323 | CONFIG_STANDALONE=y | ||
324 | CONFIG_PREVENT_FIRMWARE_BUILD=y | ||
325 | CONFIG_FW_LOADER=y | ||
326 | # CONFIG_DEBUG_DRIVER is not set | ||
327 | # CONFIG_DEBUG_DEVRES is not set | ||
328 | # CONFIG_SYS_HYPERVISOR is not set | ||
329 | CONFIG_CONNECTOR=y | ||
330 | CONFIG_PROC_EVENTS=y | ||
331 | # CONFIG_MTD is not set | ||
332 | CONFIG_OF_DEVICE=y | ||
333 | # CONFIG_PARPORT is not set | ||
334 | CONFIG_BLK_DEV=y | ||
335 | # CONFIG_BLK_DEV_FD is not set | ||
336 | # CONFIG_BLK_CPQ_DA is not set | ||
337 | # CONFIG_BLK_CPQ_CISS_DA is not set | ||
338 | # CONFIG_BLK_DEV_DAC960 is not set | ||
339 | # CONFIG_BLK_DEV_UMEM is not set | ||
340 | # CONFIG_BLK_DEV_COW_COMMON is not set | ||
341 | # CONFIG_BLK_DEV_LOOP is not set | ||
342 | # CONFIG_BLK_DEV_NBD is not set | ||
343 | # CONFIG_BLK_DEV_SX8 is not set | ||
344 | CONFIG_BLK_DEV_RAM=y | ||
345 | CONFIG_BLK_DEV_RAM_COUNT=16 | ||
346 | CONFIG_BLK_DEV_RAM_SIZE=35000 | ||
347 | CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024 | ||
348 | # CONFIG_CDROM_PKTCDVD is not set | ||
349 | # CONFIG_ATA_OVER_ETH is not set | ||
350 | # CONFIG_XILINX_SYSACE is not set | ||
351 | CONFIG_MISC_DEVICES=y | ||
352 | # CONFIG_PHANTOM is not set | ||
353 | # CONFIG_EEPROM_93CX6 is not set | ||
354 | # CONFIG_SGI_IOC4 is not set | ||
355 | # CONFIG_TIFM_CORE is not set | ||
356 | # CONFIG_IDE is not set | ||
357 | |||
358 | # | ||
359 | # SCSI device support | ||
360 | # | ||
361 | # CONFIG_RAID_ATTRS is not set | ||
362 | # CONFIG_SCSI is not set | ||
363 | # CONFIG_SCSI_DMA is not set | ||
364 | # CONFIG_SCSI_NETLINK is not set | ||
365 | # CONFIG_ATA is not set | ||
366 | # CONFIG_MD is not set | ||
367 | # CONFIG_FUSION is not set | ||
368 | |||
369 | # | ||
370 | # IEEE 1394 (FireWire) support | ||
371 | # | ||
372 | # CONFIG_FIREWIRE is not set | ||
373 | # CONFIG_IEEE1394 is not set | ||
374 | # CONFIG_I2O is not set | ||
375 | CONFIG_MACINTOSH_DRIVERS=y | ||
376 | # CONFIG_MAC_EMUMOUSEBTN is not set | ||
377 | # CONFIG_WINDFARM is not set | ||
378 | CONFIG_NETDEVICES=y | ||
379 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
380 | # CONFIG_DUMMY is not set | ||
381 | # CONFIG_BONDING is not set | ||
382 | # CONFIG_MACVLAN is not set | ||
383 | # CONFIG_EQUALIZER is not set | ||
384 | # CONFIG_TUN is not set | ||
385 | # CONFIG_VETH is not set | ||
386 | # CONFIG_IP1000 is not set | ||
387 | # CONFIG_ARCNET is not set | ||
388 | # CONFIG_PHYLIB is not set | ||
389 | CONFIG_NET_ETHERNET=y | ||
390 | # CONFIG_MII is not set | ||
391 | # CONFIG_HAPPYMEAL is not set | ||
392 | # CONFIG_SUNGEM is not set | ||
393 | # CONFIG_CASSINI is not set | ||
394 | # CONFIG_NET_VENDOR_3COM is not set | ||
395 | # CONFIG_NET_TULIP is not set | ||
396 | # CONFIG_HP100 is not set | ||
397 | CONFIG_IBM_NEW_EMAC=y | ||
398 | CONFIG_IBM_NEW_EMAC_RXB=128 | ||
399 | CONFIG_IBM_NEW_EMAC_TXB=64 | ||
400 | CONFIG_IBM_NEW_EMAC_POLL_WEIGHT=32 | ||
401 | CONFIG_IBM_NEW_EMAC_RX_COPY_THRESHOLD=256 | ||
402 | CONFIG_IBM_NEW_EMAC_RX_SKB_HEADROOM=0 | ||
403 | # CONFIG_IBM_NEW_EMAC_DEBUG is not set | ||
404 | CONFIG_IBM_NEW_EMAC_ZMII=y | ||
405 | CONFIG_IBM_NEW_EMAC_RGMII=y | ||
406 | CONFIG_IBM_NEW_EMAC_TAH=y | ||
407 | CONFIG_IBM_NEW_EMAC_EMAC4=y | ||
408 | # CONFIG_NET_PCI is not set | ||
409 | # CONFIG_B44 is not set | ||
410 | CONFIG_NETDEV_1000=y | ||
411 | # CONFIG_ACENIC is not set | ||
412 | # CONFIG_DL2K is not set | ||
413 | # CONFIG_E1000 is not set | ||
414 | # CONFIG_E1000E is not set | ||
415 | # CONFIG_NS83820 is not set | ||
416 | # CONFIG_HAMACHI is not set | ||
417 | # CONFIG_YELLOWFIN is not set | ||
418 | # CONFIG_R8169 is not set | ||
419 | # CONFIG_SIS190 is not set | ||
420 | # CONFIG_SKGE is not set | ||
421 | # CONFIG_SKY2 is not set | ||
422 | # CONFIG_SK98LIN is not set | ||
423 | # CONFIG_VIA_VELOCITY is not set | ||
424 | # CONFIG_TIGON3 is not set | ||
425 | # CONFIG_BNX2 is not set | ||
426 | # CONFIG_QLA3XXX is not set | ||
427 | # CONFIG_ATL1 is not set | ||
428 | CONFIG_NETDEV_10000=y | ||
429 | # CONFIG_CHELSIO_T1 is not set | ||
430 | # CONFIG_CHELSIO_T3 is not set | ||
431 | # CONFIG_IXGBE is not set | ||
432 | # CONFIG_IXGB is not set | ||
433 | # CONFIG_S2IO is not set | ||
434 | # CONFIG_MYRI10GE is not set | ||
435 | # CONFIG_NETXEN_NIC is not set | ||
436 | # CONFIG_NIU is not set | ||
437 | # CONFIG_MLX4_CORE is not set | ||
438 | # CONFIG_TEHUTI is not set | ||
439 | # CONFIG_TR is not set | ||
440 | |||
441 | # | ||
442 | # Wireless LAN | ||
443 | # | ||
444 | # CONFIG_WLAN_PRE80211 is not set | ||
445 | # CONFIG_WLAN_80211 is not set | ||
446 | # CONFIG_WAN is not set | ||
447 | # CONFIG_FDDI is not set | ||
448 | # CONFIG_HIPPI is not set | ||
449 | # CONFIG_PPP is not set | ||
450 | # CONFIG_SLIP is not set | ||
451 | # CONFIG_SHAPER is not set | ||
452 | # CONFIG_NETCONSOLE is not set | ||
453 | # CONFIG_NETPOLL is not set | ||
454 | # CONFIG_NET_POLL_CONTROLLER is not set | ||
455 | # CONFIG_ISDN is not set | ||
456 | # CONFIG_PHONE is not set | ||
457 | |||
458 | # | ||
459 | # Input device support | ||
460 | # | ||
461 | # CONFIG_INPUT is not set | ||
462 | |||
463 | # | ||
464 | # Hardware I/O ports | ||
465 | # | ||
466 | # CONFIG_SERIO is not set | ||
467 | # CONFIG_GAMEPORT is not set | ||
468 | |||
469 | # | ||
470 | # Character devices | ||
471 | # | ||
472 | # CONFIG_VT is not set | ||
473 | # CONFIG_SERIAL_NONSTANDARD is not set | ||
474 | |||
475 | # | ||
476 | # Serial drivers | ||
477 | # | ||
478 | CONFIG_SERIAL_8250=y | ||
479 | CONFIG_SERIAL_8250_CONSOLE=y | ||
480 | # CONFIG_SERIAL_8250_PCI is not set | ||
481 | CONFIG_SERIAL_8250_NR_UARTS=4 | ||
482 | CONFIG_SERIAL_8250_RUNTIME_UARTS=4 | ||
483 | CONFIG_SERIAL_8250_EXTENDED=y | ||
484 | # CONFIG_SERIAL_8250_MANY_PORTS is not set | ||
485 | CONFIG_SERIAL_8250_SHARE_IRQ=y | ||
486 | # CONFIG_SERIAL_8250_DETECT_IRQ is not set | ||
487 | # CONFIG_SERIAL_8250_RSA is not set | ||
488 | |||
489 | # | ||
490 | # Non-8250 serial port support | ||
491 | # | ||
492 | # CONFIG_SERIAL_UARTLITE is not set | ||
493 | CONFIG_SERIAL_CORE=y | ||
494 | CONFIG_SERIAL_CORE_CONSOLE=y | ||
495 | # CONFIG_SERIAL_JSM is not set | ||
496 | CONFIG_SERIAL_OF_PLATFORM=y | ||
497 | CONFIG_UNIX98_PTYS=y | ||
498 | CONFIG_LEGACY_PTYS=y | ||
499 | CONFIG_LEGACY_PTY_COUNT=256 | ||
500 | # CONFIG_IPMI_HANDLER is not set | ||
501 | # CONFIG_HW_RANDOM is not set | ||
502 | # CONFIG_NVRAM is not set | ||
503 | # CONFIG_GEN_RTC is not set | ||
504 | # CONFIG_R3964 is not set | ||
505 | # CONFIG_APPLICOM is not set | ||
506 | # CONFIG_RAW_DRIVER is not set | ||
507 | # CONFIG_TCG_TPM is not set | ||
508 | CONFIG_DEVPORT=y | ||
509 | # CONFIG_I2C is not set | ||
510 | |||
511 | # | ||
512 | # SPI support | ||
513 | # | ||
514 | # CONFIG_SPI is not set | ||
515 | # CONFIG_SPI_MASTER is not set | ||
516 | # CONFIG_W1 is not set | ||
517 | # CONFIG_POWER_SUPPLY is not set | ||
518 | # CONFIG_HWMON is not set | ||
519 | # CONFIG_WATCHDOG is not set | ||
520 | |||
521 | # | ||
522 | # Sonics Silicon Backplane | ||
523 | # | ||
524 | CONFIG_SSB_POSSIBLE=y | ||
525 | # CONFIG_SSB is not set | ||
526 | |||
527 | # | ||
528 | # Multifunction device drivers | ||
529 | # | ||
530 | # CONFIG_MFD_SM501 is not set | ||
531 | |||
532 | # | ||
533 | # Multimedia devices | ||
534 | # | ||
535 | # CONFIG_VIDEO_DEV is not set | ||
536 | # CONFIG_DVB_CORE is not set | ||
537 | CONFIG_DAB=y | ||
538 | |||
539 | # | ||
540 | # Graphics support | ||
541 | # | ||
542 | # CONFIG_AGP is not set | ||
543 | # CONFIG_DRM is not set | ||
544 | # CONFIG_VGASTATE is not set | ||
545 | CONFIG_VIDEO_OUTPUT_CONTROL=m | ||
546 | # CONFIG_FB is not set | ||
547 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | ||
548 | |||
549 | # | ||
550 | # Display device support | ||
551 | # | ||
552 | # CONFIG_DISPLAY_SUPPORT is not set | ||
553 | |||
554 | # | ||
555 | # Sound | ||
556 | # | ||
557 | # CONFIG_SOUND is not set | ||
558 | CONFIG_USB_SUPPORT=y | ||
559 | CONFIG_USB_ARCH_HAS_HCD=y | ||
560 | CONFIG_USB_ARCH_HAS_OHCI=y | ||
561 | CONFIG_USB_ARCH_HAS_EHCI=y | ||
562 | # CONFIG_USB is not set | ||
563 | |||
564 | # | ||
565 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | ||
566 | # | ||
567 | |||
568 | # | ||
569 | # USB Gadget Support | ||
570 | # | ||
571 | # CONFIG_USB_GADGET is not set | ||
572 | # CONFIG_MMC is not set | ||
573 | # CONFIG_NEW_LEDS is not set | ||
574 | # CONFIG_INFINIBAND is not set | ||
575 | # CONFIG_EDAC is not set | ||
576 | # CONFIG_RTC_CLASS is not set | ||
577 | |||
578 | # | ||
579 | # Userspace I/O | ||
580 | # | ||
581 | # CONFIG_UIO is not set | ||
582 | |||
583 | # | ||
584 | # File systems | ||
585 | # | ||
586 | CONFIG_EXT2_FS=y | ||
587 | # CONFIG_EXT2_FS_XATTR is not set | ||
588 | # CONFIG_EXT2_FS_XIP is not set | ||
589 | # CONFIG_EXT3_FS is not set | ||
590 | # CONFIG_EXT4DEV_FS is not set | ||
591 | # CONFIG_REISERFS_FS is not set | ||
592 | # CONFIG_JFS_FS is not set | ||
593 | # CONFIG_FS_POSIX_ACL is not set | ||
594 | # CONFIG_XFS_FS is not set | ||
595 | # CONFIG_GFS2_FS is not set | ||
596 | # CONFIG_OCFS2_FS is not set | ||
597 | # CONFIG_MINIX_FS is not set | ||
598 | # CONFIG_ROMFS_FS is not set | ||
599 | CONFIG_INOTIFY=y | ||
600 | CONFIG_INOTIFY_USER=y | ||
601 | # CONFIG_QUOTA is not set | ||
602 | CONFIG_DNOTIFY=y | ||
603 | # CONFIG_AUTOFS_FS is not set | ||
604 | # CONFIG_AUTOFS4_FS is not set | ||
605 | # CONFIG_FUSE_FS is not set | ||
606 | |||
607 | # | ||
608 | # CD-ROM/DVD Filesystems | ||
609 | # | ||
610 | # CONFIG_ISO9660_FS is not set | ||
611 | # CONFIG_UDF_FS is not set | ||
612 | |||
613 | # | ||
614 | # DOS/FAT/NT Filesystems | ||
615 | # | ||
616 | # CONFIG_MSDOS_FS is not set | ||
617 | # CONFIG_VFAT_FS is not set | ||
618 | # CONFIG_NTFS_FS is not set | ||
619 | |||
620 | # | ||
621 | # Pseudo filesystems | ||
622 | # | ||
623 | CONFIG_PROC_FS=y | ||
624 | CONFIG_PROC_KCORE=y | ||
625 | CONFIG_PROC_SYSCTL=y | ||
626 | CONFIG_SYSFS=y | ||
627 | CONFIG_TMPFS=y | ||
628 | # CONFIG_TMPFS_POSIX_ACL is not set | ||
629 | # CONFIG_HUGETLB_PAGE is not set | ||
630 | # CONFIG_CONFIGFS_FS is not set | ||
631 | |||
632 | # | ||
633 | # Miscellaneous filesystems | ||
634 | # | ||
635 | # CONFIG_ADFS_FS is not set | ||
636 | # CONFIG_AFFS_FS is not set | ||
637 | # CONFIG_HFS_FS is not set | ||
638 | # CONFIG_HFSPLUS_FS is not set | ||
639 | # CONFIG_BEFS_FS is not set | ||
640 | # CONFIG_BFS_FS is not set | ||
641 | # CONFIG_EFS_FS is not set | ||
642 | CONFIG_CRAMFS=y | ||
643 | # CONFIG_VXFS_FS is not set | ||
644 | # CONFIG_HPFS_FS is not set | ||
645 | # CONFIG_QNX4FS_FS is not set | ||
646 | # CONFIG_SYSV_FS is not set | ||
647 | # CONFIG_UFS_FS is not set | ||
648 | CONFIG_NETWORK_FILESYSTEMS=y | ||
649 | CONFIG_NFS_FS=y | ||
650 | CONFIG_NFS_V3=y | ||
651 | # CONFIG_NFS_V3_ACL is not set | ||
652 | # CONFIG_NFS_V4 is not set | ||
653 | # CONFIG_NFS_DIRECTIO is not set | ||
654 | # CONFIG_NFSD is not set | ||
655 | CONFIG_ROOT_NFS=y | ||
656 | CONFIG_LOCKD=y | ||
657 | CONFIG_LOCKD_V4=y | ||
658 | CONFIG_NFS_COMMON=y | ||
659 | CONFIG_SUNRPC=y | ||
660 | # CONFIG_SUNRPC_BIND34 is not set | ||
661 | # CONFIG_RPCSEC_GSS_KRB5 is not set | ||
662 | # CONFIG_RPCSEC_GSS_SPKM3 is not set | ||
663 | # CONFIG_SMB_FS is not set | ||
664 | # CONFIG_CIFS is not set | ||
665 | # CONFIG_NCP_FS is not set | ||
666 | # CONFIG_CODA_FS is not set | ||
667 | # CONFIG_AFS_FS is not set | ||
668 | |||
669 | # | ||
670 | # Partition Types | ||
671 | # | ||
672 | # CONFIG_PARTITION_ADVANCED is not set | ||
673 | CONFIG_MSDOS_PARTITION=y | ||
674 | # CONFIG_NLS is not set | ||
675 | # CONFIG_DLM is not set | ||
676 | # CONFIG_UCC_SLOW is not set | ||
677 | |||
678 | # | ||
679 | # Library routines | ||
680 | # | ||
681 | CONFIG_BITREVERSE=y | ||
682 | # CONFIG_CRC_CCITT is not set | ||
683 | # CONFIG_CRC16 is not set | ||
684 | # CONFIG_CRC_ITU_T is not set | ||
685 | CONFIG_CRC32=y | ||
686 | # CONFIG_CRC7 is not set | ||
687 | # CONFIG_LIBCRC32C is not set | ||
688 | CONFIG_ZLIB_INFLATE=y | ||
689 | CONFIG_PLIST=y | ||
690 | CONFIG_HAS_IOMEM=y | ||
691 | CONFIG_HAS_IOPORT=y | ||
692 | CONFIG_HAS_DMA=y | ||
693 | CONFIG_INSTRUMENTATION=y | ||
694 | # CONFIG_PROFILING is not set | ||
695 | # CONFIG_KPROBES is not set | ||
696 | # CONFIG_MARKERS is not set | ||
697 | |||
698 | # | ||
699 | # Kernel hacking | ||
700 | # | ||
701 | # CONFIG_PRINTK_TIME is not set | ||
702 | CONFIG_ENABLE_WARN_DEPRECATED=y | ||
703 | CONFIG_ENABLE_MUST_CHECK=y | ||
704 | CONFIG_MAGIC_SYSRQ=y | ||
705 | # CONFIG_UNUSED_SYMBOLS is not set | ||
706 | # CONFIG_DEBUG_FS is not set | ||
707 | # CONFIG_HEADERS_CHECK is not set | ||
708 | CONFIG_DEBUG_KERNEL=y | ||
709 | # CONFIG_DEBUG_SHIRQ is not set | ||
710 | CONFIG_DETECT_SOFTLOCKUP=y | ||
711 | CONFIG_SCHED_DEBUG=y | ||
712 | # CONFIG_SCHEDSTATS is not set | ||
713 | # CONFIG_TIMER_STATS is not set | ||
714 | # CONFIG_SLUB_DEBUG_ON is not set | ||
715 | # CONFIG_DEBUG_RT_MUTEXES is not set | ||
716 | # CONFIG_RT_MUTEX_TESTER is not set | ||
717 | # CONFIG_DEBUG_SPINLOCK is not set | ||
718 | # CONFIG_DEBUG_MUTEXES is not set | ||
719 | # CONFIG_DEBUG_SPINLOCK_SLEEP is not set | ||
720 | # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set | ||
721 | # CONFIG_DEBUG_KOBJECT is not set | ||
722 | # CONFIG_DEBUG_BUGVERBOSE is not set | ||
723 | # CONFIG_DEBUG_INFO is not set | ||
724 | # CONFIG_DEBUG_VM is not set | ||
725 | # CONFIG_DEBUG_LIST is not set | ||
726 | # CONFIG_DEBUG_SG is not set | ||
727 | CONFIG_FORCED_INLINING=y | ||
728 | # CONFIG_BOOT_PRINTK_DELAY is not set | ||
729 | # CONFIG_RCU_TORTURE_TEST is not set | ||
730 | # CONFIG_FAULT_INJECTION is not set | ||
731 | # CONFIG_SAMPLES is not set | ||
732 | # CONFIG_DEBUG_STACKOVERFLOW is not set | ||
733 | # CONFIG_DEBUG_STACK_USAGE is not set | ||
734 | # CONFIG_DEBUG_PAGEALLOC is not set | ||
735 | CONFIG_DEBUGGER=y | ||
736 | # CONFIG_KGDB is not set | ||
737 | # CONFIG_XMON is not set | ||
738 | # CONFIG_BDI_SWITCH is not set | ||
739 | |||
740 | # | ||
741 | # Security options | ||
742 | # | ||
743 | # CONFIG_KEYS is not set | ||
744 | # CONFIG_SECURITY is not set | ||
745 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | ||
746 | CONFIG_CRYPTO=y | ||
747 | CONFIG_CRYPTO_ALGAPI=y | ||
748 | CONFIG_CRYPTO_BLKCIPHER=y | ||
749 | CONFIG_CRYPTO_MANAGER=y | ||
750 | # CONFIG_CRYPTO_HMAC is not set | ||
751 | # CONFIG_CRYPTO_XCBC is not set | ||
752 | # CONFIG_CRYPTO_NULL is not set | ||
753 | # CONFIG_CRYPTO_MD4 is not set | ||
754 | CONFIG_CRYPTO_MD5=y | ||
755 | # CONFIG_CRYPTO_SHA1 is not set | ||
756 | # CONFIG_CRYPTO_SHA256 is not set | ||
757 | # CONFIG_CRYPTO_SHA512 is not set | ||
758 | # CONFIG_CRYPTO_WP512 is not set | ||
759 | # CONFIG_CRYPTO_TGR192 is not set | ||
760 | # CONFIG_CRYPTO_GF128MUL is not set | ||
761 | CONFIG_CRYPTO_ECB=y | ||
762 | CONFIG_CRYPTO_CBC=y | ||
763 | CONFIG_CRYPTO_PCBC=y | ||
764 | # CONFIG_CRYPTO_LRW is not set | ||
765 | # CONFIG_CRYPTO_XTS is not set | ||
766 | # CONFIG_CRYPTO_CRYPTD is not set | ||
767 | CONFIG_CRYPTO_DES=y | ||
768 | # CONFIG_CRYPTO_FCRYPT is not set | ||
769 | # CONFIG_CRYPTO_BLOWFISH is not set | ||
770 | # CONFIG_CRYPTO_TWOFISH is not set | ||
771 | # CONFIG_CRYPTO_SERPENT is not set | ||
772 | # CONFIG_CRYPTO_AES is not set | ||
773 | # CONFIG_CRYPTO_CAST5 is not set | ||
774 | # CONFIG_CRYPTO_CAST6 is not set | ||
775 | # CONFIG_CRYPTO_TEA is not set | ||
776 | # CONFIG_CRYPTO_ARC4 is not set | ||
777 | # CONFIG_CRYPTO_KHAZAD is not set | ||
778 | # CONFIG_CRYPTO_ANUBIS is not set | ||
779 | # CONFIG_CRYPTO_SEED is not set | ||
780 | # CONFIG_CRYPTO_DEFLATE is not set | ||
781 | # CONFIG_CRYPTO_MICHAEL_MIC is not set | ||
782 | # CONFIG_CRYPTO_CRC32C is not set | ||
783 | # CONFIG_CRYPTO_CAMELLIA is not set | ||
784 | # CONFIG_CRYPTO_TEST is not set | ||
785 | # CONFIG_CRYPTO_AUTHENC is not set | ||
786 | CONFIG_CRYPTO_HW=y | ||
787 | # CONFIG_PPC_CLOCK is not set | ||
diff --git a/arch/powerpc/platforms/44x/Kconfig b/arch/powerpc/platforms/44x/Kconfig index f65fa10ef427..1bf042498f6e 100644 --- a/arch/powerpc/platforms/44x/Kconfig +++ b/arch/powerpc/platforms/44x/Kconfig | |||
@@ -23,6 +23,16 @@ config SEQUOIA | |||
23 | help | 23 | help |
24 | This option enables support for the AMCC PPC440EPX evaluation board. | 24 | This option enables support for the AMCC PPC440EPX evaluation board. |
25 | 25 | ||
26 | config TAISHAN | ||
27 | bool "Taishan" | ||
28 | depends on 44x | ||
29 | default n | ||
30 | select 440GX | ||
31 | select PCI | ||
32 | help | ||
33 | This option enables support for the AMCC PPC440GX "Taishan" | ||
34 | evaluation board. | ||
35 | |||
26 | #config LUAN | 36 | #config LUAN |
27 | # bool "Luan" | 37 | # bool "Luan" |
28 | # depends on 44x | 38 | # depends on 44x |
@@ -59,6 +69,10 @@ config 440GP | |||
59 | 69 | ||
60 | config 440GX | 70 | config 440GX |
61 | bool | 71 | bool |
72 | select IBM_NEW_EMAC_EMAC4 | ||
73 | select IBM_NEW_EMAC_RGMII | ||
74 | select IBM_NEW_EMAC_ZMII #test only | ||
75 | select IBM_NEW_EMAC_TAH #test only | ||
62 | 76 | ||
63 | config 440SP | 77 | config 440SP |
64 | bool | 78 | bool |
diff --git a/arch/powerpc/platforms/44x/Makefile b/arch/powerpc/platforms/44x/Makefile index 10ce6740cc7d..8b05589471d2 100644 --- a/arch/powerpc/platforms/44x/Makefile +++ b/arch/powerpc/platforms/44x/Makefile | |||
@@ -1,4 +1,5 @@ | |||
1 | obj-$(CONFIG_44x) := misc_44x.o | 1 | obj-$(CONFIG_44x) := misc_44x.o |
2 | obj-$(CONFIG_EBONY) += ebony.o | 2 | obj-$(CONFIG_EBONY) += ebony.o |
3 | obj-$(CONFIG_TAISHAN) += taishan.o | ||
3 | obj-$(CONFIG_BAMBOO) += bamboo.o | 4 | obj-$(CONFIG_BAMBOO) += bamboo.o |
4 | obj-$(CONFIG_SEQUOIA) += sequoia.o | 5 | obj-$(CONFIG_SEQUOIA) += sequoia.o |
diff --git a/arch/powerpc/platforms/44x/taishan.c b/arch/powerpc/platforms/44x/taishan.c new file mode 100644 index 000000000000..e3b7c7023336 --- /dev/null +++ b/arch/powerpc/platforms/44x/taishan.c | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | * Taishan board specific routines based off ebony.c code | ||
3 | * original copyrights below | ||
4 | * | ||
5 | * Matt Porter <mporter@kernel.crashing.org> | ||
6 | * Copyright 2002-2005 MontaVista Software Inc. | ||
7 | * | ||
8 | * Eugene Surovegin <eugene.surovegin@zultys.com> or <ebs@ebshome.net> | ||
9 | * Copyright (c) 2003-2005 Zultys Technologies | ||
10 | * | ||
11 | * Rewritten and ported to the merged powerpc tree: | ||
12 | * Copyright 2007 David Gibson <dwg@au1.ibm.com>, IBM Corporation. | ||
13 | * | ||
14 | * Modified from ebony.c for taishan: | ||
15 | * Copyright 2007 Hugh Blemings <hugh@au.ibm.com>, IBM Corporation. | ||
16 | * | ||
17 | * This program is free software; you can redistribute it and/or modify it | ||
18 | * under the terms of the GNU General Public License as published by the | ||
19 | * Free Software Foundation; either version 2 of the License, or (at your | ||
20 | * option) any later version. | ||
21 | */ | ||
22 | |||
23 | #include <linux/init.h> | ||
24 | #include <linux/of_platform.h> | ||
25 | |||
26 | #include <asm/machdep.h> | ||
27 | #include <asm/prom.h> | ||
28 | #include <asm/udbg.h> | ||
29 | #include <asm/time.h> | ||
30 | #include <asm/uic.h> | ||
31 | #include <asm/pci-bridge.h> | ||
32 | |||
33 | #include "44x.h" | ||
34 | |||
35 | static struct of_device_id taishan_of_bus[] = { | ||
36 | { .compatible = "ibm,plb4", }, | ||
37 | { .compatible = "ibm,opb", }, | ||
38 | { .compatible = "ibm,ebc", }, | ||
39 | {}, | ||
40 | }; | ||
41 | |||
42 | static int __init taishan_device_probe(void) | ||
43 | { | ||
44 | if (!machine_is(taishan)) | ||
45 | return 0; | ||
46 | |||
47 | of_platform_bus_probe(NULL, taishan_of_bus, NULL); | ||
48 | |||
49 | return 0; | ||
50 | } | ||
51 | device_initcall(taishan_device_probe); | ||
52 | |||
53 | /* | ||
54 | * Called very early, MMU is off, device-tree isn't unflattened | ||
55 | */ | ||
56 | static int __init taishan_probe(void) | ||
57 | { | ||
58 | unsigned long root = of_get_flat_dt_root(); | ||
59 | |||
60 | if (!of_flat_dt_is_compatible(root, "amcc,taishan")) | ||
61 | return 0; | ||
62 | |||
63 | return 1; | ||
64 | } | ||
65 | |||
66 | define_machine(taishan) { | ||
67 | .name = "Taishan", | ||
68 | .probe = taishan_probe, | ||
69 | .progress = udbg_progress, | ||
70 | .init_IRQ = uic_init_tree, | ||
71 | .get_irq = uic_get_irq, | ||
72 | .restart = ppc44x_reset_system, | ||
73 | .calibrate_decr = generic_calibrate_decr, | ||
74 | }; | ||