xref: /linux/arch/powerpc/boot/treeboot-bamboo.c (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Copyright IBM Corporation, 2007
4  * Josh Boyer <jwboyer@linux.vnet.ibm.com>
5  *
6  * Based on ebony wrapper:
7  * Copyright 2007 David Gibson, IBM Corporation.
8  */
9 #include "ops.h"
10 #include "stdio.h"
11 #include "44x.h"
12 #include "stdlib.h"
13 
14 BSS_STACK(4096);
15 
16 #define PIBS_MAC0 0xfffc0400
17 #define PIBS_MAC1 0xfffc0500
18 char pibs_mac0[6];
19 char pibs_mac1[6];
20 
21 static void read_pibs_mac(void)
22 {
23 	unsigned long long mac64;
24 
25 	mac64 = strtoull((char *)PIBS_MAC0, 0, 16);
26 	memcpy(&pibs_mac0, (char *)&mac64+2, 6);
27 
28 	mac64 = strtoull((char *)PIBS_MAC1, 0, 16);
29 	memcpy(&pibs_mac1, (char *)&mac64+2, 6);
30 }
31 
32 void platform_init(void)
33 {
34 	unsigned long end_of_ram = 0x8000000;
35 	unsigned long avail_ram = end_of_ram - (unsigned long)_end;
36 
37 	simple_alloc_init(_end, avail_ram, 32, 64);
38 	read_pibs_mac();
39 	bamboo_init((u8 *)&pibs_mac0, (u8 *)&pibs_mac1);
40 }
41