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); 34 ibm4xx_fixup_memsize(); 35 ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00); 36 dt_fixup_mac_addresses(bamboo_mac0, bamboo_mac1); 37 } 38 39 void bamboo_init(void *mac0, void *mac1) 40 { 41 platform_ops.fixups = bamboo_fixups; 42 platform_ops.exit = ibm44x_dbcr_reset; 43 bamboo_mac0 = mac0; 44 bamboo_mac1 = mac1; 45 ft_init(_dtb_start, 0, 32); 46 serial_console_init(); 47 } 48