dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
pios_heap.c File Reference
#include "pios.h"
#include "pios_heap.h"
#include <stdio.h>
#include <stdint.h>
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  pios_heap
 

Macros

#define DEBUG_MALLOC_FAILURES   0
 

Functions

static void malloc_failed_hook (void)
 
bool PIOS_heap_malloc_failed_p (void)
 
static bool is_ptr_in_heap_p (const struct pios_heap *heap, void *buf)
 
static void * simple_malloc (struct pios_heap *heap, size_t size)
 
static void simple_free (struct pios_heap *heap, void *buf)
 
static size_t simple_get_free_bytes (struct pios_heap *heap)
 
static void simple_extend_heap (struct pios_heap *heap, size_t bytes)
 
void * pvPortMalloc (size_t size) __attribute__((alias("PIOS_malloc")
 
void * PIOS_malloc (size_t size)
 
void * PIOS_malloc_no_dma (size_t size)
 
void vPortFree (void *buf) __attribute__((alias("PIOS_free")))
 
void PIOS_free (void *buf)
 
size_t xPortGetFreeHeapSize (void)
 
size_t PIOS_fastheap_get_free_size (void)
 
void PIOS_heap_initialize_blocks (void)
 
void PIOS_heap_increase_size (size_t bytes)
 
void * _sbrk (int incr)
 

Variables

static volatile bool malloc_failed_flag = false
 
struct pios_heap __attribute__
 
const void * _eheap
 
const void * _sheap
 
static struct pios_heap pios_standard_heap
 
void weak
 
static uintptr_t sbrk_pool [1024]
 
static uintptr_t brk_ptr = (uintptr_t) sbrk_pool