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
14BSS_STACK(4096);
15
16#define PIBS_MAC0 0xfffc0400
17#define PIBS_MAC1 0xfffc0500
18char pibs_mac0[6];
19char pibs_mac1[6];
20
21static void read_pibs_mac(void)
22{
23 unsigned long long mac64;
24
25 mac64 = strtoull(ptr: (char *)PIBS_MAC0, end: 0, base: 16);
26 memcpy(dest: &pibs_mac0, src: (char *)&mac64+2, n: 6);
27
28 mac64 = strtoull(ptr: (char *)PIBS_MAC1, end: 0, base: 16);
29 memcpy(dest: &pibs_mac1, src: (char *)&mac64+2, n: 6);
30}
31
32void 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(base: _end, heap_size: avail_ram, granularity: 32, max_allocs: 64);
38 read_pibs_mac();
39 bamboo_init(mac0: (u8 *)&pibs_mac0, mac1: (u8 *)&pibs_mac1);
40}
41

source code of linux/arch/powerpc/boot/treeboot-bamboo.c