diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2007-05-08 06:10:01 +0200 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-05-08 06:47:32 +0200 |
commit | f6dfc80554b27da11dbb36ebae166b23ec3aa9ca (patch) | |
tree | 2ca363b4e2d634988c40c9a03106c719b0324ebd /arch/powerpc/boot/treeboot-ebony.c | |
parent | [POWERPC] Add device tree for Ebony (diff) | |
download | linux-f6dfc80554b27da11dbb36ebae166b23ec3aa9ca.tar.xz linux-f6dfc80554b27da11dbb36ebae166b23ec3aa9ca.zip |
[POWERPC] Support for the Ebony 440GP reference board in arch/powerpc
This adds platform support code for the Ebony (440GP) evaluation
board. This includes both code in arch/powerpc/platforms/44x for
board initialization, and zImage wrapper code to correctly tweak the
flattened device tree based on information from the firmware. The
zImage supports both IBM OpenBIOS (aka "treeboot") and old versions of
uboot which don't support a flattened device tree.
Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/boot/treeboot-ebony.c')
-rw-r--r-- | arch/powerpc/boot/treeboot-ebony.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/arch/powerpc/boot/treeboot-ebony.c b/arch/powerpc/boot/treeboot-ebony.c new file mode 100644 index 000000000000..8436a9c55192 --- /dev/null +++ b/arch/powerpc/boot/treeboot-ebony.c @@ -0,0 +1,34 @@ +/* + * Old U-boot compatibility for Ebony + * + * Author: David Gibson <david@gibson.dropbear.id.au> + * + * Copyright 2007 David Gibson, IBM Corporatio. + * Based on cuboot-83xx.c, which is: + * Copyright (c) 2007 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + */ + +#include "ops.h" +#include "stdio.h" +#include "44x.h" + +extern char _end[]; + +BSS_STACK(4096); + +#define OPENBIOS_MAC_BASE 0xfffffe0c +#define OPENBIOS_MAC_OFFSET 0xc + +void platform_init(void) +{ + unsigned long end_of_ram = 0x8000000; + unsigned long avail_ram = end_of_ram - (unsigned long)_end; + + simple_alloc_init(_end, avail_ram, 32, 64); + ebony_init((u8 *)OPENBIOS_MAC_BASE, + (u8 *)(OPENBIOS_MAC_BASE + OPENBIOS_MAC_OFFSET)); +} |