1 // SPDX-License-Identifier: GPL-2.0-or-later
2 
3 #include <stddef.h>
4 #include "stdio.h"
5 #include "types.h"
6 #include "io.h"
7 #include "ops.h"
8 
9 BSS_STACK(8192);
10 
platform_init(unsigned long r3,unsigned long r4,unsigned long r5)11 void platform_init(unsigned long r3, unsigned long r4, unsigned long r5)
12 {
13 	unsigned long heapsize = 16*1024*1024 - (unsigned long)_end;
14 
15 	/*
16 	 * Disable interrupts and turn off MSR_RI, since we'll
17 	 * shortly be overwriting the interrupt vectors.
18 	 */
19 	__asm__ volatile("mtmsrd %0,1" : : "r" (0));
20 
21 	simple_alloc_init(_end, heapsize, 32, 64);
22 	fdt_init(_dtb_start);
23 	serial_console_init();
24 }
25