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

Functions

static int pmsis_kickoff (void *arg)
 
static void pmsis_exit (int err)
 
static void * pmsis_task_create (void(*entry)(void *), void *arg, char *name, int priority)
 
static void * pi_task_create (pi_task_entry_t func, void *arg, char *name, uint32_t stack_size, int priority)
 
static void * pi_user_task_create (pi_task_entry_t func, void *arg, char *name, uint32_t stack_size, int priority)
 
static void pmsis_task_suspend (void *task_handler)
 
static void pi_yield ()
 
static int disable_irq (void)
 
static void restore_irq (int irq_enable)
 
static int pi_sem_init (pi_sem_t *sem)
 
static int pi_sem_deinit (pi_sem_t *sem)
 
static void pi_sem_take (pi_sem_t *sem)
 
static void pi_sem_give (pi_sem_t *sem)
 
static void pmsis_mutex_take (pmsis_mutex_t *mutex)
 
static void pmsis_mutex_release (pmsis_mutex_t *mutex)
 
static int pmsis_mutex_init (pmsis_mutex_t *mutex)
 
static int pmsis_mutex_deinit (pmsis_mutex_t *mutex)
 
static void pmsis_spinlock_init (pmsis_spinlock_t *spinlock)
 
static void pmsis_spinlock_take (pmsis_spinlock_t *spinlock)
 
static void pmsis_spinlock_release (pmsis_spinlock_t *spinlock)
 

Function Documentation

static int disable_irq ( void  )
inlinestatic

References __os_native_api_disable_irq(), and hal_compiler_barrier().

Referenced by __pi_aes_crypt_async(), __pi_asrc_convert_async(), __pi_cl_dma_decompressor_enqueue_cmd(), __pi_dmacpy_copy(), __pi_i2c_close(), __pi_i2c_ioctl(), __pi_i2c_open(), __pi_i2c_read(), __pi_i2c_slave_close(), __pi_i2c_slave_open(), __pi_i2c_slave_set_rx_channel(), __pi_i2c_slave_set_tx_channel(), __pi_i2c_slave_stop_rx(), __pi_i2c_slave_stop_tx(), __pi_i2c_write(), __pi_i2c_write_dual(), __pi_i2c_write_read(), __pi_i2s_channel_read_async(), __pi_i2s_channel_write_async(), __pi_i2s_ioctl(), __pi_i2s_read_async(), __pi_octospi_2d_copy(), __pi_octospi_ioctl(), __pi_pmu_sleep_mode_set(), __pi_spi_copy_async_2d(), __pi_spi_send_async(), __pi_task_push(), __pi_uart_close(), __pi_uart_copy(), __pi_uart_ioctl(), __pi_udma_fifo_pop16(), __pi_udma_fifo_pop24(), __pi_udma_fifo_pop32(), __pi_udma_fifo_pop8(), __pi_udma_fifo_push16(), __pi_udma_fifo_push24(), __pi_udma_fifo_push32(), __pi_udma_fifo_push8(), __pi_udma_timeout_task_push(), __spi_cpy_read_aligned(), __spi_cpy_read_misaligned(), __spi_cpy_send_aligned(), __spi_cpy_send_misaligned(), pi_fc_l1_free(), pi_fc_l1_malloc(), pi_ffc_convert_async(), pi_mem_slab_alloc(), pi_mem_slab_free(), pi_task_push_delayed_us(), pi_time_wait_us(), pi_udma_datamove_copy_async(), pi_udma_fifo_hw_fifo_task_enqueue(), pi_udma_fifo_sw_fifo_task_enqueue(), pmsis_event_kernel_destroy(), pmsis_event_lock_cl_to_fc(), pmsis_event_release(), pmsis_mutex_release(), pmsis_mutex_take(), pmsis_spinlock_release(), and pmsis_spinlock_take().

static int pi_sem_deinit ( pi_sem_t *  sem)
inlinestatic
static void pi_sem_give ( pi_sem_t *  sem)
inlinestatic
static int pi_sem_init ( pi_sem_t *  sem)
inlinestatic
static void pi_sem_take ( pi_sem_t *  sem)
inlinestatic
static void* pi_task_create ( pi_task_entry_t  func,
void *  arg,
char *  name,
uint32_t  stack_size,
int  priority 
)
inlinestatic
static void* pi_user_task_create ( pi_task_entry_t  func,
void *  arg,
char *  name,
uint32_t  stack_size,
int  priority 
)
inlinestatic
static void pi_yield ( )
inlinestatic

References __os_native_yield().

Referenced by __attribute__().

static void pmsis_exit ( int  err)
inlinestatic
static int pmsis_kickoff ( void *  arg)
inlinestatic

References __os_native_kickoff().

Referenced by main().

static int pmsis_mutex_deinit ( pmsis_mutex_t *  mutex)
inlinestatic
static int pmsis_mutex_init ( pmsis_mutex_t *  mutex)
inlinestatic
static void pmsis_mutex_release ( pmsis_mutex_t *  mutex)
inlinestatic
static void pmsis_mutex_take ( pmsis_mutex_t *  mutex)
inlinestatic
static void pmsis_spinlock_init ( pmsis_spinlock_t *  spinlock)
inlinestatic
static void* pmsis_task_create ( void(*)(void *)  entry,
void *  arg,
char *  name,
int  priority 
)
inlinestatic
static void pmsis_task_suspend ( void *  task_handler)
inlinestatic
static void restore_irq ( int  irq_enable)
inlinestatic

References __os_native_api_restore_irq(), and hal_compiler_barrier().

Referenced by __pi_aes_crypt_async(), __pi_asrc_convert_async(), __pi_cl_dma_decompressor_enqueue_cmd(), __pi_dmacpy_copy(), __pi_i2c_close(), __pi_i2c_ioctl(), __pi_i2c_open(), __pi_i2c_read(), __pi_i2c_slave_close(), __pi_i2c_slave_open(), __pi_i2c_slave_set_rx_channel(), __pi_i2c_slave_set_tx_channel(), __pi_i2c_slave_stop_rx(), __pi_i2c_slave_stop_tx(), __pi_i2c_write(), __pi_i2c_write_dual(), __pi_i2c_write_read(), __pi_i2s_channel_read_async(), __pi_i2s_channel_write_async(), __pi_i2s_ioctl(), __pi_i2s_read_async(), __pi_octospi_2d_copy(), __pi_octospi_ioctl(), __pi_pmu_sleep_mode_set(), __pi_spi_copy_async_2d(), __pi_spi_receive_async(), __pi_spi_receive_async_with_ucode(), __pi_spi_send_async_with_ucode(), __pi_spi_xfer_async(), __pi_task_push(), __pi_uart_close(), __pi_uart_copy(), __pi_uart_ioctl(), __pi_udma_fifo_pop16(), __pi_udma_fifo_pop24(), __pi_udma_fifo_pop32(), __pi_udma_fifo_pop8(), __pi_udma_fifo_push16(), __pi_udma_fifo_push24(), __pi_udma_fifo_push32(), __pi_udma_fifo_push8(), __pi_udma_timeout_task_push(), __spi_cpy_read_aligned(), __spi_cpy_read_misaligned(), __spi_cpy_send_aligned(), __spi_cpy_send_misaligned(), pi_fc_l1_free(), pi_fc_l1_malloc(), pi_ffc_convert_async(), pi_mem_slab_alloc(), pi_mem_slab_free(), pi_spi_close(), pi_spi_open(), pi_task_push_delayed_us(), pi_time_wait_us(), pi_udma_datamove_copy_async(), pi_udma_fifo_hw_fifo_task_enqueue(), pi_udma_fifo_sw_fifo_task_enqueue(), pmsis_event_kernel_destroy(), pmsis_event_push(), pmsis_event_release(), pmsis_event_unlock_cl_to_fc(), pmsis_mutex_release(), pmsis_mutex_take(), pmsis_spinlock_release(), and pmsis_spinlock_take().