diff options
Diffstat (limited to 'arch/powerpc/boot')
-rw-r--r-- | arch/powerpc/boot/cuboot-warp.c | 43 | ||||
-rw-r--r-- | arch/powerpc/boot/dts/haleakala.dts | 5 | ||||
-rw-r--r-- | arch/powerpc/boot/dts/kilauea.dts | 5 | ||||
-rw-r--r-- | arch/powerpc/boot/dts/makalu.dts | 5 | ||||
-rw-r--r-- | arch/powerpc/boot/dts/warp.dts | 42 |
5 files changed, 53 insertions, 47 deletions
diff --git a/arch/powerpc/boot/cuboot-warp.c b/arch/powerpc/boot/cuboot-warp.c index 21780210057d..806df693fea6 100644 --- a/arch/powerpc/boot/cuboot-warp.c +++ b/arch/powerpc/boot/cuboot-warp.c | |||
@@ -18,57 +18,14 @@ | |||
18 | 18 | ||
19 | static bd_t bd; | 19 | static bd_t bd; |
20 | 20 | ||
21 | static void warp_fixup_one_nor(u32 from, u32 to) | ||
22 | { | ||
23 | void *devp; | ||
24 | char name[50]; | ||
25 | u32 v[2]; | ||
26 | |||
27 | sprintf(name, "/plb/opb/ebc/nor_flash@0,0/partition@%x", from); | ||
28 | |||
29 | devp = finddevice(name); | ||
30 | if (!devp) | ||
31 | return; | ||
32 | |||
33 | if (getprop(devp, "reg", v, sizeof(v)) == sizeof(v)) { | ||
34 | v[0] = to; | ||
35 | setprop(devp, "reg", v, sizeof(v)); | ||
36 | |||
37 | printf("NOR 64M fixup %x -> %x\r\n", from, to); | ||
38 | } | ||
39 | } | ||
40 | |||
41 | |||
42 | static void warp_fixups(void) | 21 | static void warp_fixups(void) |
43 | { | 22 | { |
44 | ibm440ep_fixup_clocks(66000000, 11059200, 50000000); | 23 | ibm440ep_fixup_clocks(66000000, 11059200, 50000000); |
45 | ibm4xx_sdram_fixup_memsize(); | 24 | ibm4xx_sdram_fixup_memsize(); |
46 | ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); | 25 | ibm4xx_fixup_ebc_ranges("/plb/opb/ebc"); |
47 | dt_fixup_mac_address_by_alias("ethernet0", bd.bi_enetaddr); | 26 | dt_fixup_mac_address_by_alias("ethernet0", bd.bi_enetaddr); |
48 | |||
49 | /* Fixup for 64M flash on Rev A boards. */ | ||
50 | if (bd.bi_flashsize == 0x4000000) { | ||
51 | void *devp; | ||
52 | u32 v[3]; | ||
53 | |||
54 | devp = finddevice("/plb/opb/ebc/nor_flash@0,0"); | ||
55 | if (!devp) | ||
56 | return; | ||
57 | |||
58 | /* Fixup the size */ | ||
59 | if (getprop(devp, "reg", v, sizeof(v)) == sizeof(v)) { | ||
60 | v[2] = bd.bi_flashsize; | ||
61 | setprop(devp, "reg", v, sizeof(v)); | ||
62 | } | ||
63 | |||
64 | /* Fixup parition offsets */ | ||
65 | warp_fixup_one_nor(0x300000, 0x3f00000); | ||
66 | warp_fixup_one_nor(0x340000, 0x3f40000); | ||
67 | warp_fixup_one_nor(0x380000, 0x3f80000); | ||
68 | } | ||
69 | } | 27 | } |
70 | 28 | ||
71 | |||
72 | void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, | 29 | void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, |
73 | unsigned long r6, unsigned long r7) | 30 | unsigned long r6, unsigned long r7) |
74 | { | 31 | { |
diff --git a/arch/powerpc/boot/dts/haleakala.dts b/arch/powerpc/boot/dts/haleakala.dts index 513bc43a71af..5b2a4947bf82 100644 --- a/arch/powerpc/boot/dts/haleakala.dts +++ b/arch/powerpc/boot/dts/haleakala.dts | |||
@@ -89,8 +89,11 @@ | |||
89 | clock-frequency = <0>; /* Filled in by U-Boot */ | 89 | clock-frequency = <0>; /* Filled in by U-Boot */ |
90 | 90 | ||
91 | SDRAM0: memory-controller { | 91 | SDRAM0: memory-controller { |
92 | compatible = "ibm,sdram-405exr"; | 92 | compatible = "ibm,sdram-405exr", "ibm,sdram-4xx-ddr2"; |
93 | dcr-reg = <0x010 0x002>; | 93 | dcr-reg = <0x010 0x002>; |
94 | interrupt-parent = <&UIC2>; | ||
95 | interrupts = <0x5 0x4 /* ECC DED Error */ | ||
96 | 0x6 0x4>; /* ECC SEC Error */ | ||
94 | }; | 97 | }; |
95 | 98 | ||
96 | MAL0: mcmal { | 99 | MAL0: mcmal { |
diff --git a/arch/powerpc/boot/dts/kilauea.dts b/arch/powerpc/boot/dts/kilauea.dts index dececc4b5ff2..2804444812e5 100644 --- a/arch/powerpc/boot/dts/kilauea.dts +++ b/arch/powerpc/boot/dts/kilauea.dts | |||
@@ -90,8 +90,11 @@ | |||
90 | clock-frequency = <0>; /* Filled in by U-Boot */ | 90 | clock-frequency = <0>; /* Filled in by U-Boot */ |
91 | 91 | ||
92 | SDRAM0: memory-controller { | 92 | SDRAM0: memory-controller { |
93 | compatible = "ibm,sdram-405ex"; | 93 | compatible = "ibm,sdram-405ex", "ibm,sdram-4xx-ddr2"; |
94 | dcr-reg = <0x010 0x002>; | 94 | dcr-reg = <0x010 0x002>; |
95 | interrupt-parent = <&UIC2>; | ||
96 | interrupts = <0x5 0x4 /* ECC DED Error */ | ||
97 | 0x6 0x4>; /* ECC SEC Error */ | ||
95 | }; | 98 | }; |
96 | 99 | ||
97 | MAL0: mcmal { | 100 | MAL0: mcmal { |
diff --git a/arch/powerpc/boot/dts/makalu.dts b/arch/powerpc/boot/dts/makalu.dts index 945508c7e7d8..ffc246e72670 100644 --- a/arch/powerpc/boot/dts/makalu.dts +++ b/arch/powerpc/boot/dts/makalu.dts | |||
@@ -90,8 +90,11 @@ | |||
90 | clock-frequency = <0>; /* Filled in by U-Boot */ | 90 | clock-frequency = <0>; /* Filled in by U-Boot */ |
91 | 91 | ||
92 | SDRAM0: memory-controller { | 92 | SDRAM0: memory-controller { |
93 | compatible = "ibm,sdram-405ex"; | 93 | compatible = "ibm,sdram-405ex", "ibm,sdram-4xx-ddr2"; |
94 | dcr-reg = <0x010 0x002>; | 94 | dcr-reg = <0x010 0x002>; |
95 | interrupt-parent = <&UIC2>; | ||
96 | interrupts = <0x5 0x4 /* ECC DED Error */ | ||
97 | 0x6 0x4 /* ECC SEC Error */ >; | ||
95 | }; | 98 | }; |
96 | 99 | ||
97 | MAL0: mcmal { | 100 | MAL0: mcmal { |
diff --git a/arch/powerpc/boot/dts/warp.dts b/arch/powerpc/boot/dts/warp.dts index f4e4ba69eef7..7e183ff9a317 100644 --- a/arch/powerpc/boot/dts/warp.dts +++ b/arch/powerpc/boot/dts/warp.dts | |||
@@ -149,12 +149,17 @@ | |||
149 | reg = <0x00000002 0x00004000 0x00000A00>; | 149 | reg = <0x00000002 0x00004000 0x00000A00>; |
150 | }; | 150 | }; |
151 | 151 | ||
152 | nor_flash@0,0 { | 152 | nor@0,0 { |
153 | compatible = "amd,s29gl032a", "cfi-flash"; | 153 | compatible = "amd,s29gl032a", "cfi-flash"; |
154 | bank-width = <2>; | 154 | bank-width = <2>; |
155 | reg = <0x00000000 0x00000000 0x00400000>; | 155 | reg = <0x00000000 0x00000000 0x00400000>; |
156 | #address-cells = <1>; | 156 | #address-cells = <1>; |
157 | #size-cells = <1>; | 157 | #size-cells = <1>; |
158 | |||
159 | partition@0 { | ||
160 | label = "splash"; | ||
161 | reg = <0x00000000 0x00020000>; | ||
162 | }; | ||
158 | partition@300000 { | 163 | partition@300000 { |
159 | label = "fpga"; | 164 | label = "fpga"; |
160 | reg = <0x0300000 0x00040000>; | 165 | reg = <0x0300000 0x00040000>; |
@@ -168,6 +173,41 @@ | |||
168 | reg = <0x0380000 0x00080000>; | 173 | reg = <0x0380000 0x00080000>; |
169 | }; | 174 | }; |
170 | }; | 175 | }; |
176 | |||
177 | ndfc@1,0 { | ||
178 | compatible = "ibm,ndfc"; | ||
179 | reg = <0x00000001 0x00000000 0x00002000>; | ||
180 | ccr = <0x00001000>; | ||
181 | bank-settings = <0x80002222>; | ||
182 | #address-cells = <1>; | ||
183 | #size-cells = <1>; | ||
184 | |||
185 | nand { | ||
186 | #address-cells = <1>; | ||
187 | #size-cells = <1>; | ||
188 | |||
189 | partition@0 { | ||
190 | label = "kernel"; | ||
191 | reg = <0x00000000 0x00200000>; | ||
192 | }; | ||
193 | partition@200000 { | ||
194 | label = "root"; | ||
195 | reg = <0x00200000 0x03E00000>; | ||
196 | }; | ||
197 | partition@40000000 { | ||
198 | label = "persistent"; | ||
199 | reg = <0x04000000 0x04000000>; | ||
200 | }; | ||
201 | partition@80000000 { | ||
202 | label = "persistent1"; | ||
203 | reg = <0x08000000 0x04000000>; | ||
204 | }; | ||
205 | partition@C0000000 { | ||
206 | label = "persistent2"; | ||
207 | reg = <0x0C000000 0x04000000>; | ||
208 | }; | ||
209 | }; | ||
210 | }; | ||
171 | }; | 211 | }; |
172 | 212 | ||
173 | UART0: serial@ef600300 { | 213 | UART0: serial@ef600300 { |