VSF Documented
Data Structures | Macros | Typedefs | Enumerations | Functions
rtos_generic.h File Reference
#include "hal/vsf_hal_cfg.h"
#include <VSF_ARCH_RTOS_MODEL_HEADER>
#include "utilities/ooc_class.h"

Go to the source code of this file.

Data Structures

class  vsf_arch_irq_thread_with_stack_t
 

Macros

#define __LITTLE_ENDIAN   1
 
#define __BYTE_ORDER   __LITTLE_ENDIAN
 
#define VSF_ARCH_RTOS_CFG_STACK_DEPTH   1024
 
#define VSF_ARCH_SWI_NUM   0
 
#define VSF_ARCH_PRI_NUM   1
 
#define VSF_USER_ENTRY   vsf_main
 
#define VSF_ARCH_IRQ_REQUEST_SUPPORT_MANUAL_RESET
 
#define VSF_ARCH_RTOS_MODE_SUSPEND_RESUME   1
 
#define VSF_ARCH_RTOS_MODE_REQUEST   2
 
#define VSF_ARCH_RTOS_CFG_MODE   VSF_ARCH_RTOS_MODE_SUSPEND_RESUME
 
#define __VSF_ARCH_PRI(__N, __UNUSED)
 
#define VSF_ARCH_LIMIT_NO_SET_STACK
 

Typedefs

typedef enum vsf_arch_prio_t vsf_arch_prio_t
 
typedef void(* vsf_arch_irq_thread_entry_t) (void *)
 

Enumerations

enum  vsf_arch_prio_t {
  VSF_ARCH_PRIO_INVALID = -1 ,
  vsf_arch_prio_invalid = -1 ,
  vsf_arch_prio_highest = VSF_ARCH_PRI_NUM - 1
}
 

Functions

void __vsf_arch_delay_ms (uint_fast32_t ms)
 
void __vsf_arch_irq_request_init (vsf_arch_irq_request_t *request, bool auto_reset)
 
void __vsf_arch_irq_request_fini (vsf_arch_irq_request_t *request)
 
void __vsf_arch_irq_request_pend (vsf_arch_irq_request_t *request)
 
void __vsf_arch_irq_request_send (vsf_arch_irq_request_t *request)
 
void __vsf_arch_irq_request_reset (vsf_arch_irq_request_t *request)
 
void __vsf_arch_irq_enter (void)
 
void __vsf_arch_irq_leave (void)
 
void __vsf_arch_irq_init (vsf_arch_irq_thread_t *irq_thread, const char *const name, vsf_arch_irq_thread_entry_t entry, vsf_arch_prio_t priority, VSF_ARCH_RTOS_STACK_T *stack, uint_fast32_t stack_depth)
 
vsf_err_t __vsf_arch_irq_restart (vsf_arch_irq_thread_t *irq_thread, vsf_arch_irq_request_t *request_pending)
 
void __vsf_arch_irq_exit (vsf_arch_irq_thread_t *irq_thread)
 
void __vsf_arch_irq_set_priority (vsf_arch_irq_thread_t *irq_thread, vsf_arch_prio_t priority)
 
void __vsf_arch_irq_suspend (vsf_arch_irq_thread_t *irq_thread)
 
void __vsf_arch_irq_resume (vsf_arch_irq_thread_t *irq_thread)
 
vsf_arch_prio_t __vsf_arch_irq_get_priority (vsf_arch_irq_thread_t *irq_thread)
 
void vsf_arch_wakeup (void)
 

Macro Definition Documentation

◆ __LITTLE_ENDIAN

#define __LITTLE_ENDIAN   1

◆ __BYTE_ORDER

#define __BYTE_ORDER   __LITTLE_ENDIAN

◆ VSF_ARCH_RTOS_CFG_STACK_DEPTH

#define VSF_ARCH_RTOS_CFG_STACK_DEPTH   1024

◆ VSF_ARCH_SWI_NUM

#define VSF_ARCH_SWI_NUM   0

◆ VSF_ARCH_PRI_NUM

#define VSF_ARCH_PRI_NUM   1

◆ VSF_USER_ENTRY

#define VSF_USER_ENTRY   vsf_main

◆ VSF_ARCH_IRQ_REQUEST_SUPPORT_MANUAL_RESET

#define VSF_ARCH_IRQ_REQUEST_SUPPORT_MANUAL_RESET

◆ VSF_ARCH_RTOS_MODE_SUSPEND_RESUME

#define VSF_ARCH_RTOS_MODE_SUSPEND_RESUME   1

◆ VSF_ARCH_RTOS_MODE_REQUEST

#define VSF_ARCH_RTOS_MODE_REQUEST   2

◆ VSF_ARCH_RTOS_CFG_MODE

#define VSF_ARCH_RTOS_CFG_MODE   VSF_ARCH_RTOS_MODE_SUSPEND_RESUME

◆ __VSF_ARCH_PRI

#define __VSF_ARCH_PRI (   __N,
  __UNUSED 
)
Value:
VSF_ARCH_PRIO_##__N = (__N), \
vsf_arch_prio_##__N = (__N),

◆ VSF_ARCH_LIMIT_NO_SET_STACK

#define VSF_ARCH_LIMIT_NO_SET_STACK

Typedef Documentation

◆ vsf_arch_prio_t

◆ vsf_arch_irq_thread_entry_t

typedef void(* vsf_arch_irq_thread_entry_t) (void *)

Enumeration Type Documentation

◆ vsf_arch_prio_t

Enumerator
VSF_ARCH_PRIO_INVALID 
vsf_arch_prio_invalid 
vsf_arch_prio_highest 

Function Documentation

◆ __vsf_arch_delay_ms()

void __vsf_arch_delay_ms ( uint_fast32_t  ms)
extern

◆ __vsf_arch_irq_request_init()

void __vsf_arch_irq_request_init ( vsf_arch_irq_request_t request,
bool  auto_reset 
)
extern

◆ __vsf_arch_irq_request_fini()

void __vsf_arch_irq_request_fini ( vsf_arch_irq_request_t request)
extern

◆ __vsf_arch_irq_request_pend()

void __vsf_arch_irq_request_pend ( vsf_arch_irq_request_t request)
extern

◆ __vsf_arch_irq_request_send()

void __vsf_arch_irq_request_send ( vsf_arch_irq_request_t request)
extern

◆ __vsf_arch_irq_request_reset()

void __vsf_arch_irq_request_reset ( vsf_arch_irq_request_t request)
extern

◆ __vsf_arch_irq_enter()

void __vsf_arch_irq_enter ( void  )
extern

◆ __vsf_arch_irq_leave()

void __vsf_arch_irq_leave ( void  )
extern

◆ __vsf_arch_irq_init()

void __vsf_arch_irq_init ( vsf_arch_irq_thread_t irq_thread,
const char *const  name,
vsf_arch_irq_thread_entry_t  entry,
vsf_arch_prio_t  priority,
VSF_ARCH_RTOS_STACK_T stack,
uint_fast32_t  stack_depth 
)
extern

◆ __vsf_arch_irq_restart()

vsf_err_t __vsf_arch_irq_restart ( vsf_arch_irq_thread_t irq_thread,
vsf_arch_irq_request_t request_pending 
)
extern

◆ __vsf_arch_irq_exit()

void __vsf_arch_irq_exit ( vsf_arch_irq_thread_t irq_thread)
extern

◆ __vsf_arch_irq_set_priority()

void __vsf_arch_irq_set_priority ( vsf_arch_irq_thread_t irq_thread,
vsf_arch_prio_t  priority 
)
extern

◆ __vsf_arch_irq_suspend()

void __vsf_arch_irq_suspend ( vsf_arch_irq_thread_t irq_thread)
extern

◆ __vsf_arch_irq_resume()

void __vsf_arch_irq_resume ( vsf_arch_irq_thread_t irq_thread)
extern

◆ __vsf_arch_irq_get_priority()

vsf_arch_prio_t __vsf_arch_irq_get_priority ( vsf_arch_irq_thread_t irq_thread)
extern

◆ vsf_arch_wakeup()

void vsf_arch_wakeup ( void  )
extern