bond/kernel/ke/alloc.c

30 lines
527 B
C
Raw Normal View History

2018-01-25 19:11:22 +00:00
#include "type.h"
#include "kernel/ke/alloc.h"
#include "lib/salloc.h"
2017-02-01 03:26:08 +00:00
#define K_KERNEL_HEAP_SIZE 8192
static _Bool alloc_initialized;
static uint8_t alloc_heap[K_KERNEL_HEAP_SIZE];
2018-02-18 07:48:59 +00:00
void SXAPI ke_alloc_init(void)
2017-02-01 03:26:08 +00:00
{
2018-02-18 04:06:57 +00:00
if (!alloc_initialized)
{
lb_salloc_init(alloc_heap, K_KERNEL_HEAP_SIZE);
alloc_initialized = true;
}
2017-02-01 03:26:08 +00:00
}
2018-02-18 07:48:59 +00:00
void *SXAPI ke_alloc(uint32_t size)
2017-02-01 03:26:08 +00:00
{
2018-02-18 04:06:57 +00:00
return alloc_initialized ? lb_salloc(alloc_heap, size) : NULL;
2017-02-01 03:26:08 +00:00
}
2018-02-18 07:48:59 +00:00
void SXAPI ke_free(void *ptr)
2017-02-01 03:26:08 +00:00
{
2018-02-18 04:06:57 +00:00
if (alloc_initialized)
{
lb_sfree(alloc_heap, ptr);
}
2017-02-01 03:26:08 +00:00
}