FreeRTOS port on GAP8/RISC-V
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
mem_slab.c File Reference

Functions

static void create_free_list (struct pi_mem_slab *slab)
 
void pi_mem_slab_init (pi_mem_slab_t *slab, void *buffer, size_t block_size, uint32_t num_blocks)
 
int pi_mem_slab_alloc (pi_mem_slab_t *slab, void **mem, int32_t timeout)
 
void pi_mem_slab_free (pi_mem_slab_t *slab, void **mem)
 

Function Documentation

static void create_free_list ( struct pi_mem_slab slab)
static
int pi_mem_slab_alloc ( pi_mem_slab_t *  slab,
void **  mem,
int32_t  timeout 
)

References disable_irq(), and restore_irq().

Referenced by __pi_i2s_enqueue().

void pi_mem_slab_free ( pi_mem_slab_t *  slab,
void **  mem 
)

References disable_irq(), and restore_irq().

void pi_mem_slab_init ( pi_mem_slab_t *  slab,
void *  buffer,
size_t  block_size,
uint32_t  num_blocks 
)

References create_free_list().