| Josh Boyer | 2ba4573 | 2007-08-20 07:30:32 -0500 | [diff] [blame] | 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 |  * This program is free software; you can redistribute it and/or | 
 | 9 |  * modify it under the terms of the GNU General Public License | 
 | 10 |  * as published by the Free Software Foundation; version 2 of the License | 
 | 11 |  */ | 
 | 12 | #include "ops.h" | 
 | 13 | #include "stdio.h" | 
 | 14 | #include "44x.h" | 
| Josh Boyer | 658e817 | 2007-09-15 04:54:11 +1000 | [diff] [blame] | 15 | #include "stdlib.h" | 
| Josh Boyer | 2ba4573 | 2007-08-20 07:30:32 -0500 | [diff] [blame] | 16 |  | 
 | 17 | BSS_STACK(4096); | 
 | 18 |  | 
| Josh Boyer | 658e817 | 2007-09-15 04:54:11 +1000 | [diff] [blame] | 19 | #define PIBS_MAC0 0xfffc0400 | 
 | 20 | #define PIBS_MAC1 0xfffc0500 | 
 | 21 | char pibs_mac0[6]; | 
 | 22 | char pibs_mac1[6]; | 
 | 23 |  | 
 | 24 | static void read_pibs_mac(void) | 
 | 25 | { | 
 | 26 | 	unsigned long long mac64; | 
 | 27 |  | 
 | 28 | 	mac64 = strtoull((char *)PIBS_MAC0, 0, 16); | 
 | 29 | 	memcpy(&pibs_mac0, (char *)&mac64+2, 6); | 
 | 30 |  | 
 | 31 | 	mac64 = strtoull((char *)PIBS_MAC1, 0, 16); | 
 | 32 | 	memcpy(&pibs_mac1, (char *)&mac64+2, 6); | 
 | 33 | } | 
 | 34 |  | 
| Josh Boyer | 2ba4573 | 2007-08-20 07:30:32 -0500 | [diff] [blame] | 35 | void platform_init(void) | 
 | 36 | { | 
 | 37 | 	unsigned long end_of_ram = 0x8000000; | 
 | 38 | 	unsigned long avail_ram = end_of_ram - (unsigned long)_end; | 
 | 39 |  | 
 | 40 | 	simple_alloc_init(_end, avail_ram, 32, 64); | 
| Josh Boyer | 658e817 | 2007-09-15 04:54:11 +1000 | [diff] [blame] | 41 | 	read_pibs_mac(); | 
 | 42 | 	bamboo_init((u8 *)&pibs_mac0, (u8 *)&pibs_mac1); | 
| Josh Boyer | 2ba4573 | 2007-08-20 07:30:32 -0500 | [diff] [blame] | 43 | } |