summaryrefslogtreecommitdiffstats
path: root/arch/ppc
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2007-07-05 18:02:10 +0200
committerSascha Hauer <sha@octopus.labnet.pengutronix.de>2007-07-05 18:02:10 +0200
commitadfd4533a4ccd5a7f54ef330e0cd30c05bb353a7 (patch)
tree591f001c31a404d8bd509e01d3ec13e17b1215d7 /arch/ppc
parente76747a21be0572b0541489fafaa22a21ee0b70c (diff)
downloadbarebox-adfd4533a4ccd5a7f54ef330e0cd30c05bb353a7.tar.gz
barebox-adfd4533a4ccd5a7f54ef330e0cd30c05bb353a7.tar.xz
svn_rev_624
first successfull boot
Diffstat (limited to 'arch/ppc')
-rw-r--r--arch/ppc/lib/ppclinux.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/ppc/lib/ppclinux.c b/arch/ppc/lib/ppclinux.c
index c6ff9871af..54df443447 100644
--- a/arch/ppc/lib/ppclinux.c
+++ b/arch/ppc/lib/ppclinux.c
@@ -198,13 +198,10 @@ do_bootm_linux(image_header_t *os_header, image_header_t *initrd_header, const c
#endif /* CONFIG_MPC5xxx */
}
- kernel = (void (*)(bd_t *, ulong, ulong, ulong, ulong))(32 * 1024 * 1024); /* FIXME */
+ kernel = (void (*)(bd_t *, ulong, ulong, ulong, ulong))ntohl(os_header->ih_ep); /* FIXME */
- printf("uncompressing\n");
- if (relocate_image(os_header, (void *)(32 * 1024 * 1024)))
+ if (relocate_image(os_header, (void *)ntohl(os_header->ih_load)))
return -1;
- printf("done\n");
-
#if defined(CFG_INIT_RAM_LOCK) && !defined(CONFIG_E500)
unlock_ram_in_cache();
@@ -255,6 +252,7 @@ do_bootm_linux(image_header_t *os_header, image_header_t *initrd_header, const c
* r7: NULL
*/
ft_setup(of_flat_tree, kbd, initrd_data, initrd_end);
+ ft_cpu_setup(of_flat_tree, kbd);
ft_dump_blob(of_flat_tree);
(*kernel) ((bd_t *)of_flat_tree, (ulong)kernel, 0, 0, 0);