aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/boot
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2007-10-23 08:20:51 -0400
committerPaul Mackerras <paulus@samba.org>2007-10-23 08:20:51 -0400
commit786d3693f46579c7cd982e65de9f43eba94e4a57 (patch)
treee794415702e30899fd7181072e8753bb8068cce2 /arch/powerpc/boot
parentdba5baf32887f58414ed7183a95309686894eab2 (diff)
parent739253765ed55742431866b19330fa0e1012c417 (diff)
Merge branch 'for-2.6.24' of master.kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx into merge
Diffstat (limited to 'arch/powerpc/boot')
-rw-r--r--arch/powerpc/boot/dts/bamboo.dts10
-rw-r--r--arch/powerpc/boot/dts/sequoia.dts14
-rw-r--r--arch/powerpc/boot/dts/walnut.dts12
-rw-r--r--arch/powerpc/boot/treeboot-walnut.c6
4 files changed, 32 insertions, 10 deletions
diff --git a/arch/powerpc/boot/dts/bamboo.dts b/arch/powerpc/boot/dts/bamboo.dts
index a88ae3d218a5..cb2fb50a281c 100644
--- a/arch/powerpc/boot/dts/bamboo.dts
+++ b/arch/powerpc/boot/dts/bamboo.dts
@@ -98,11 +98,13 @@
98 interrupt-parent = <&MAL0>; 98 interrupt-parent = <&MAL0>;
99 interrupts = <0 1 2 3 4>; 99 interrupts = <0 1 2 3 4>;
100 #interrupt-cells = <1>; 100 #interrupt-cells = <1>;
101 #address-cells = <0>;
102 #size-cells = <0>;
101 interrupt-map = </*TXEOB*/ 0 &UIC0 a 4 103 interrupt-map = </*TXEOB*/ 0 &UIC0 a 4
102 /*RXEOB*/ 1 &UIC0 b 4 104 /*RXEOB*/ 1 &UIC0 b 4
103 /*SERR*/ 2 &UIC1 0 4 105 /*SERR*/ 2 &UIC1 0 4
104 /*TXDE*/ 3 &UIC1 1 4 106 /*TXDE*/ 3 &UIC1 1 4
105 /*RXDE*/ 4 &UIC1 3 4>; 107 /*RXDE*/ 4 &UIC1 2 4>;
106 }; 108 };
107 109
108 POB0: opb { 110 POB0: opb {
@@ -196,6 +198,7 @@
196 }; 198 };
197 199
198 EMAC0: ethernet@ef600e00 { 200 EMAC0: ethernet@ef600e00 {
201 linux,network-index = <0>;
199 device_type = "network"; 202 device_type = "network";
200 compatible = "ibm,emac-440ep", "ibm,emac-440gp", "ibm,emac"; 203 compatible = "ibm,emac-440ep", "ibm,emac-440gp", "ibm,emac";
201 interrupt-parent = <&UIC1>; 204 interrupt-parent = <&UIC1>;
@@ -210,12 +213,13 @@
210 rx-fifo-size = <1000>; 213 rx-fifo-size = <1000>;
211 tx-fifo-size = <800>; 214 tx-fifo-size = <800>;
212 phy-mode = "rmii"; 215 phy-mode = "rmii";
213 phy-map = <00000001>; 216 phy-map = <00000000>;
214 zmii-device = <&ZMII0>; 217 zmii-device = <&ZMII0>;
215 zmii-channel = <0>; 218 zmii-channel = <0>;
216 }; 219 };
217 220
218 EMAC1: ethernet@ef600f00 { 221 EMAC1: ethernet@ef600f00 {
222 linux,network-index = <1>;
219 device_type = "network"; 223 device_type = "network";
220 compatible = "ibm,emac-440ep", "ibm,emac-440gp", "ibm,emac"; 224 compatible = "ibm,emac-440ep", "ibm,emac-440gp", "ibm,emac";
221 interrupt-parent = <&UIC1>; 225 interrupt-parent = <&UIC1>;
@@ -230,7 +234,7 @@
230 rx-fifo-size = <1000>; 234 rx-fifo-size = <1000>;
231 tx-fifo-size = <800>; 235 tx-fifo-size = <800>;
232 phy-mode = "rmii"; 236 phy-mode = "rmii";
233 phy-map = <00000001>; 237 phy-map = <00000000>;
234 zmii-device = <&ZMII0>; 238 zmii-device = <&ZMII0>;
235 zmii-channel = <1>; 239 zmii-channel = <1>;
236 }; 240 };
diff --git a/arch/powerpc/boot/dts/sequoia.dts b/arch/powerpc/boot/dts/sequoia.dts
index 36be75b04de1..8833dfe2e8b4 100644
--- a/arch/powerpc/boot/dts/sequoia.dts
+++ b/arch/powerpc/boot/dts/sequoia.dts
@@ -241,6 +241,12 @@
241 reg = <ef600d00 c>; 241 reg = <ef600d00 c>;
242 }; 242 };
243 243
244 RGMII0: emac-rgmii@ef601000 {
245 device_type = "rgmii-interface";
246 compatible = "ibm,rgmii-440epx", "ibm,rgmii";
247 reg = <ef601000 8>;
248 };
249
244 EMAC0: ethernet@ef600e00 { 250 EMAC0: ethernet@ef600e00 {
245 linux,network-index = <0>; 251 linux,network-index = <0>;
246 device_type = "network"; 252 device_type = "network";
@@ -261,10 +267,12 @@
261 max-frame-size = <5dc>; 267 max-frame-size = <5dc>;
262 rx-fifo-size = <1000>; 268 rx-fifo-size = <1000>;
263 tx-fifo-size = <800>; 269 tx-fifo-size = <800>;
264 phy-mode = "rmii"; 270 phy-mode = "rgmii";
265 phy-map = <00000000>; 271 phy-map = <00000000>;
266 zmii-device = <&ZMII0>; 272 zmii-device = <&ZMII0>;
267 zmii-channel = <0>; 273 zmii-channel = <0>;
274 rgmii-device = <&RGMII0>;
275 rgmii-channel = <0>;
268 }; 276 };
269 277
270 EMAC1: ethernet@ef600f00 { 278 EMAC1: ethernet@ef600f00 {
@@ -287,10 +295,12 @@
287 max-frame-size = <5dc>; 295 max-frame-size = <5dc>;
288 rx-fifo-size = <1000>; 296 rx-fifo-size = <1000>;
289 tx-fifo-size = <800>; 297 tx-fifo-size = <800>;
290 phy-mode = "rmii"; 298 phy-mode = "rgmii";
291 phy-map = <00000000>; 299 phy-map = <00000000>;
292 zmii-device = <&ZMII0>; 300 zmii-device = <&ZMII0>;
293 zmii-channel = <1>; 301 zmii-channel = <1>;
302 rgmii-device = <&RGMII0>;
303 rgmii-channel = <1>;
294 }; 304 };
295 }; 305 };
296 }; 306 };
diff --git a/arch/powerpc/boot/dts/walnut.dts b/arch/powerpc/boot/dts/walnut.dts
index ec54f4e04ad6..fa681f5343fe 100644
--- a/arch/powerpc/boot/dts/walnut.dts
+++ b/arch/powerpc/boot/dts/walnut.dts
@@ -64,10 +64,15 @@
64 MAL: mcmal { 64 MAL: mcmal {
65 compatible = "ibm,mcmal-405gp", "ibm,mcmal"; 65 compatible = "ibm,mcmal-405gp", "ibm,mcmal";
66 dcr-reg = <180 62>; 66 dcr-reg = <180 62>;
67 num-tx-chans = <2>; 67 num-tx-chans = <1>;
68 num-rx-chans = <1>; 68 num-rx-chans = <1>;
69 interrupt-parent = <&UIC0>; 69 interrupt-parent = <&UIC0>;
70 interrupts = <a 4 b 4 c 4 d 4 e 4>; 70 interrupts = <
71 b 4 /* TXEOB */
72 c 4 /* RXEOB */
73 a 4 /* SERR */
74 d 4 /* TXDE */
75 e 4 /* RXDE */>;
71 }; 76 };
72 77
73 POB0: opb { 78 POB0: opb {
@@ -118,9 +123,10 @@
118 compatible = "ibm,emac-405gp", "ibm,emac"; 123 compatible = "ibm,emac-405gp", "ibm,emac";
119 interrupt-parent = <&UIC0>; 124 interrupt-parent = <&UIC0>;
120 interrupts = <9 4 f 4>; 125 interrupts = <9 4 f 4>;
126 local-mac-address = [000000000000]; /* Filled in by zImage */
121 reg = <ef600800 70>; 127 reg = <ef600800 70>;
122 mal-device = <&MAL>; 128 mal-device = <&MAL>;
123 mal-tx-channel = <0 1>; 129 mal-tx-channel = <0>;
124 mal-rx-channel = <0>; 130 mal-rx-channel = <0>;
125 cell-index = <0>; 131 cell-index = <0>;
126 max-frame-size = <5dc>; 132 max-frame-size = <5dc>;
diff --git a/arch/powerpc/boot/treeboot-walnut.c b/arch/powerpc/boot/treeboot-walnut.c
index 3adf2d08a230..bb2c309d70fc 100644
--- a/arch/powerpc/boot/treeboot-walnut.c
+++ b/arch/powerpc/boot/treeboot-walnut.c
@@ -57,8 +57,8 @@ void ibm405gp_fixup_clocks(unsigned int sysclk, unsigned int ser_clk)
57 } 57 }
58 58
59 /* setup the timebase clock to tick at the cpu frequency */ 59 /* setup the timebase clock to tick at the cpu frequency */
60 cpc0_cr1 = cpc0_cr1 & ~ 0x00800000; 60 cpc0_cr1 = cpc0_cr1 & ~0x00800000;
61 mtdcr(DCRN_CPC0_CR1, cpc0_cr1); 61 mtdcr(DCRN_405_CPC0_CR1, cpc0_cr1);
62 tb = cpu; 62 tb = cpu;
63 63
64 dt_fixup_cpu_clocks(cpu, tb, 0); 64 dt_fixup_cpu_clocks(cpu, tb, 0);
@@ -109,6 +109,7 @@ static void walnut_flashsel_fixup(void)
109 setprop(sram, "reg", reg_sram, sizeof(reg_sram)); 109 setprop(sram, "reg", reg_sram, sizeof(reg_sram));
110} 110}
111 111
112#define WALNUT_OPENBIOS_MAC_OFF 0xfffffe0b
112static void walnut_fixups(void) 113static void walnut_fixups(void)
113{ 114{
114 ibm4xx_fixup_memsize(); 115 ibm4xx_fixup_memsize();
@@ -116,6 +117,7 @@ static void walnut_fixups(void)
116 ibm4xx_quiesce_eth((u32 *)0xef600800, NULL); 117 ibm4xx_quiesce_eth((u32 *)0xef600800, NULL);
117 ibm4xx_fixup_ebc_ranges("/plb/ebc"); 118 ibm4xx_fixup_ebc_ranges("/plb/ebc");
118 walnut_flashsel_fixup(); 119 walnut_flashsel_fixup();
120 dt_fixup_mac_addresses((u8 *) WALNUT_OPENBIOS_MAC_OFF);
119} 121}
120 122
121void platform_init(void) 123void platform_init(void)