1 /* 2 * Copyright IBM Corporation, 2007 3 * Josh Boyer <jwboyer@linux.vnet.ibm.com> 4 * 5 * Based on ebony wrapper: 6 * Copyright 2007 David Gibson, IBM Corporation. 7 * 8 * Clocking code based on code by: 9 * Stefan Roese <sr@denx.de> 10 * 11 * This program is free software; you can redistribute it and/or 12 * modify it under the terms of the GNU General Public License 13 * as published by the Free Software Foundation; version 2 of the License 14 */ 15 #include <stdarg.h> 16 #include <stddef.h> 17 #include "types.h" 18 #include "elf.h" 19 #include "string.h" 20 #include "stdio.h" 21 #include "page.h" 22 #include "ops.h" 23 #include "dcr.h" 24 #include "4xx.h" 25 #include "44x.h" 26 27 static u8 *bamboo_mac0, *bamboo_mac1; 28 29 static void bamboo_fixups(void) 30 { 31 unsigned long sysclk = 33333333; 32 33 ibm440ep_fixup_clocks(sysclk, 11059200, 25000000); 34 ibm4xx_sdram_fixup_memsize(); 35 ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00); 36 dt_fixup_mac_address_by_alias("ethernet0", bamboo_mac0); 37 dt_fixup_mac_address_by_alias("ethernet1", bamboo_mac1); 38 } 39 40 void bamboo_init(void *mac0, void *mac1) 41 { 42 platform_ops.fixups = bamboo_fixups; 43 platform_ops.exit = ibm44x_dbcr_reset; 44 bamboo_mac0 = mac0; 45 bamboo_mac1 = mac1; 46 fdt_init(_dtb_start); 47 serial_console_init(); 48 } 49