xref: /linux/arch/powerpc/boot/treeboot-bamboo.c (revision e58e871becec2d3b04ed91c0c16fe8deac9c9dfa)
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"
15 #include "stdlib.h"
16 
17 BSS_STACK(4096);
18 
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 
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);
41 	read_pibs_mac();
42 	bamboo_init((u8 *)&pibs_mac0, (u8 *)&pibs_mac1);
43 }
44