ISIX-RTOS - small operating system for ARM microcontrollers 1.2
|
#include <isix/config.h>
#include <isix/types.h>
#include <isix/memory.h>
#include <isix/semaphore.h>
#include <isix/fifo.h>
#include <prv/semaphore.h>
#include <prv/scheduler.h>
#include <string.h>
#include <prv/fifo.h>
#include <isix/printk.h>
Go to the source code of this file.
Defines | |
#define | ISIX_DEBUG_FIFO ISIX_DBG_OFF |
Functions | |
fifo_t * | isix_fifo_create (int n_elem, int elem_size) |
int | isix_fifo_write (fifo_t *fifo, const void *item, tick_t timeout) |
int | isix_fifo_write_isr (fifo_t *fifo, const void *item) |
int | isix_fifo_read (fifo_t *fifo, void *item, tick_t timeout) |
int | isix_fifo_read_isr (fifo_t *fifo, void *item) |
int | isix_fifo_destroy (fifo_t *fifo) |
int | isix_fifo_count (fifo_t *fifo) |
int isix_fifo_count | ( | fifo_t * | fifo | ) |
Definition at line 174 of file fifo.c.
References isix::ISIX_EINVARG, and isix_sem_getval().
fifo_t* isix_fifo_create | ( | int | n_elem, |
int | elem_size | ||
) |
Create queue for n elements
[in] | n_elem | Number of available elements in the fifo |
[in] | elem_size | Size of the element |
Definition at line 28 of file fifo.c.
References IHANDLE_T_FIFO, isix_alloc(), isix_free(), isix_printk, isix::isix_sem_create(), and NULL.
int isix_fifo_destroy | ( | fifo_t * | fifo | ) |
Definition at line 145 of file fifo.c.
References isix::ISIX_EBUSY, isix::ISIX_EOK, isix_free(), isix_printk, isix_sem_destroy(), isixp_enter_critical(), isixp_exit_critical(), and isixp_sem_can_destroy().
int isix_fifo_read | ( | fifo_t * | fifo, |
void * | item, | ||
tick_t | timeout | ||
) |
Definition at line 103 of file fifo.c.
References isix::ISIX_EINVARG, isix::ISIX_ETIMEOUT, isix_printk, isix::isix_sem_signal(), isix_sem_wait(), isixp_enter_critical(), and isixp_exit_critical().
int isix_fifo_read_isr | ( | fifo_t * | fifo, |
void * | item | ||
) |
Definition at line 124 of file fifo.c.
References isix::ISIX_EFIFOFULL, isix::ISIX_EINVARG, isix_printk, isix_sem_get_isr(), isix::isix_sem_signal_isr(), isixp_enter_critical(), and isixp_exit_critical().
int isix_fifo_write | ( | fifo_t * | fifo, |
const void * | item, | ||
tick_t | timeout | ||
) |
Definition at line 62 of file fifo.c.
References isix::ISIX_EINVARG, isix::ISIX_ETIMEOUT, isix_printk, isix::isix_sem_signal(), isix_sem_wait(), isixp_enter_critical(), and isixp_exit_critical().
int isix_fifo_write_isr | ( | fifo_t * | fifo, |
const void * | item | ||
) |
Definition at line 83 of file fifo.c.
References isix::ISIX_EFIFOFULL, isix::ISIX_EINVARG, isix_printk, isix_sem_get_isr(), isix::isix_sem_signal_isr(), isixp_enter_critical(), and isixp_exit_critical().