0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #include <stdarg.h>
0013 #include <stddef.h>
0014 #include "types.h"
0015 #include "elf.h"
0016 #include "string.h"
0017 #include "stdio.h"
0018 #include "page.h"
0019 #include "ops.h"
0020 #include "dcr.h"
0021 #include "4xx.h"
0022 #include "44x.h"
0023
0024 static u8 *bamboo_mac0, *bamboo_mac1;
0025
0026 static void bamboo_fixups(void)
0027 {
0028 unsigned long sysclk = 33333333;
0029
0030 ibm440ep_fixup_clocks(sysclk, 11059200, 25000000);
0031 ibm4xx_sdram_fixup_memsize();
0032 ibm4xx_quiesce_eth((u32 *)0xef600e00, (u32 *)0xef600f00);
0033 dt_fixup_mac_address_by_alias("ethernet0", bamboo_mac0);
0034 dt_fixup_mac_address_by_alias("ethernet1", bamboo_mac1);
0035 }
0036
0037 void bamboo_init(void *mac0, void *mac1)
0038 {
0039 platform_ops.fixups = bamboo_fixups;
0040 platform_ops.exit = ibm44x_dbcr_reset;
0041 bamboo_mac0 = mac0;
0042 bamboo_mac1 = mac1;
0043 fdt_init(_dtb_start);
0044 serial_console_init();
0045 }