| Giuseppe Coviello | b6014e1 | 2008-05-20 01:20:47 +1000 | [diff] [blame] | 1 | /* | 
 | 2 |  * Old U-boot compatibility for Sam440ep based off bamboo.c code | 
 | 3 |  * original copyrights below | 
 | 4 |  * | 
 | 5 |  * Author: Josh Boyer <jwboyer@linux.vnet.ibm.com> | 
 | 6 |  * | 
 | 7 |  * Copyright 2007 IBM Corporation | 
 | 8 |  * | 
 | 9 |  * Based on cuboot-ebony.c | 
 | 10 |  * | 
 | 11 |  * Modified from cuboot-bamboo.c for sam440ep: | 
 | 12 |  * Copyright 2008 Giuseppe Coviello <gicoviello@gmail.com> | 
 | 13 |  * | 
 | 14 |  * This program is free software; you can redistribute it and/or modify it | 
 | 15 |  * under the terms of the GNU General Public License version 2 as published | 
 | 16 |  * by the Free Software Foundation. | 
 | 17 |  */ | 
 | 18 |  | 
 | 19 | #include "ops.h" | 
 | 20 | #include "stdio.h" | 
 | 21 | #include "44x.h" | 
 | 22 | #include "4xx.h" | 
 | 23 | #include "cuboot.h" | 
 | 24 |  | 
 | 25 | #define TARGET_4xx | 
 | 26 | #define TARGET_44x | 
 | 27 | #include "ppcboot.h" | 
 | 28 |  | 
 | 29 | static bd_t bd; | 
 | 30 |  | 
 | 31 | static void sam440ep_fixups(void) | 
 | 32 | { | 
 | 33 |        unsigned long sysclk = 66666666; | 
 | 34 |  | 
 | 35 |        ibm440ep_fixup_clocks(sysclk, 11059200, 25000000); | 
 | 36 |        ibm4xx_sdram_fixup_memsize(); | 
 | 37 |        ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00); | 
 | 38 |        dt_fixup_mac_addresses(&bd.bi_enetaddr, &bd.bi_enet1addr); | 
 | 39 | } | 
 | 40 |  | 
 | 41 | void platform_init(unsigned long r3, unsigned long r4, unsigned long r5, | 
 | 42 | 		unsigned long r6, unsigned long r7) | 
 | 43 | { | 
 | 44 | 	CUBOOT_INIT(); | 
 | 45 | 	platform_ops.fixups = sam440ep_fixups; | 
 | 46 | 	platform_ops.exit = ibm44x_dbcr_reset; | 
 | 47 | 	fdt_init(_dtb_start); | 
 | 48 | 	serial_console_init(); | 
 | 49 | } |