| 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 | } |