POK(kernelpart)
bsp.c
Go to the documentation of this file.
1 /*
2  * POK header
3  *
4  * The following file is a part of the POK project. Any modification should
5  * made according to the POK licence. You CANNOT use this file or a part of
6  * this file is this part of a file for your own project
7  *
8  * For more information on the POK licence, please see our LICENCE FILE
9  *
10  * Please follow the coding guidelines described in doc/CODING_GUIDELINES
11  *
12  * Copyright (c) 2007-2009 POK team
13  *
14  * Created by julien on Thu Jan 15 23:34:13 2009
15  */
16 
22 #include <errno.h>
23 #include <arch.h>
24 #include <core/debug.h>
25 #include "cons.h"
26 #include "sparc_conf.h"
27 
28 extern char _end[];
29 
30 static char *heap_end = _end;
31 
32 int pok_bsp_init (void)
33 {
34  pok_cons_init ();
35  return (POK_ERRNO_OK);
36 }
37 
44 void *pok_bsp_mem_alloc (size_t sz)
45 {
46  char *res;
47 
48  /* Aligned on page size */
49  res = (char *)(((uint32_t)heap_end + SPARC_PAGE_SIZE) & ~ (SPARC_PAGE_SIZE - 1));
50  heap_end = res + sz;
51  return res;
52 }