Dynamic memory allocator
Can be used as a replacement of malloc with a O(1) allocation time
Example for airframe file
Add to your firmware section: This example contains all possible configuration options, not all of them are mandatory!
<module name="tlsf">
b'<configure name="TLSF_MAX_FLI" value="16" />\n '
</module>
Module configuration options
Configure Options
- name:
TLSF_MAX_FLI
value: 16
Description: limit buffer size to 2^TLSF_MAX_FLI (e.g. 64Ko for MAX_FLI of 16
Module functions
Init Functions
These initialization functions are called once on startup.
Files
Header Files
The following headers are automatically included in modules.h
Source Files
Raw tlsf.xml file:
<!DOCTYPE module SYSTEM "module.dtd">
<module name="tlsf" task="core">
<doc>
<description>
Dynamic memory allocator
Can be used as a replacement of malloc with a O(1) allocation time
</description>
<configure name="TLSF_MAX_FLI" value="16" description="limit buffer size to 2^TLSF_MAX_FLI (e.g. 64Ko for MAX_FLI of 16"/>
</doc>
<header>
<file name="tlsf_malloc.h" />
</header>
<init fun="tlsf_init_heaps()"/>
<makefile target="ap">
<configure name="TLSF_MAX_FLI" default="16"/>
<define name="MAX_FLI" value="$(TLSF_MAX_FLI)"/>
<file_arch name="tlsf_malloc_arch.c"/>
<include name="$(PAPARAZZI_SRC)/sw/ext/tlsf"/>
<file name="tlsf.c" dir="$(PAPARAZZI_SRC)/sw/ext/tlsf"/>
</makefile>
</module>