diff options
author | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2008-03-06 21:15:52 -0600 |
---|---|---|
committer | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2008-03-26 07:19:17 -0500 |
commit | d0a48c9f4c4582a966ce6426c1bf8ef1e37e63ee (patch) | |
tree | 8f9a9ded94d2cdda8330bb76d7b6a867e765d64f /arch/powerpc/boot/cuboot-yosemite.c | |
parent | ed70854a4f45d089bd8ef2e8476dbed6287b2ff7 (diff) |
[POWERPC] 4xx: Add bootwrapper for AMCC Yosemite board
Add the cuboot wrapper for the AMCC 440EP Yosemite board
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/powerpc/boot/cuboot-yosemite.c')
-rw-r--r-- | arch/powerpc/boot/cuboot-yosemite.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/arch/powerpc/boot/cuboot-yosemite.c b/arch/powerpc/boot/cuboot-yosemite.c new file mode 100644 index 00000000000..cc6e338c5d0 --- /dev/null +++ b/arch/powerpc/boot/cuboot-yosemite.c @@ -0,0 +1,44 @@ +/* + * Old U-boot compatibility for Yosemite + * + * Author: Josh Boyer <jwboyer@linux.vnet.ibm.com> + * + * Copyright 2008 IBM Corporation + * + * 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 "4xx.h" +#include "44x.h" +#include "cuboot.h" + +#define TARGET_4xx +#define TARGET_44x +#include "ppcboot.h" + +static bd_t bd; + +static void yosemite_fixups(void) +{ + unsigned long sysclk = 66666666; + + ibm440ep_fixup_clocks(sysclk, 11059200, 50000000); + ibm4xx_sdram_fixup_memsize(); + ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00); + dt_fixup_mac_address_by_alias("ethernet0", bd.bi_enetaddr); + dt_fixup_mac_address_by_alias("ethernet1", bd.bi_enet1addr); +} + +void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, + unsigned long r6, unsigned long r7) +{ + CUBOOT_INIT(); + platform_ops.fixups = yosemite_fixups; + platform_ops.exit = ibm44x_dbcr_reset; + fdt_init(_dtb_start); + serial_console_init(); +} |