VSF Documented
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
cortex_m_generic.h File Reference
#include "hal/vsf_hal_cfg.h"
#include "hal/driver/driver.h"
#include "./SysTick/systick.h"

Go to the source code of this file.

Data Structures

struct  vsf_arch_abi_vplt_t
 

Macros

#define __VSF_HEADER_ONLY_SHOW_ARCH_INFO__
 
#define __LITTLE_ENDIAN   1
 
#define __BYTE_ORDER   __LITTLE_ENDIAN
 
#define VSF_ARCH_CFG_CALLSTACK_TRACE   ENABLED
 
#define VSF_ARCH_SWI_NUM   1
 
#define VSF_SYSTIMER_CFG_IMPL_MODE   VSF_SYSTIMER_IMPL_WITH_NORMAL_TIMER
 
#define __VSF_ARCH_SYSTIMER_BITS   24
 
#define vsf_arch_wakeup()
 
#define __VSF_ARCH_PRI_INDEX(__N, __UNUSED)    __vsf_arch_prio_index_##__N = (__N),
 
#define __VSF_ARCH_PRI(__N, __BIT)
 
#define VSF_APPLET_USE_ARCH_ABI   ENABLED
 

Typedefs

typedef uint64_t vsf_systimer_tick_t
 
typedef enum vsf_arch_prio_t vsf_arch_prio_t
 
typedef struct vsf_arch_abi_vplt_t vsf_arch_abi_vplt_t
 

Enumerations

enum  { __vsf_arch_prio_index_number }
 
enum  vsf_arch_prio_t {
  __VSF_ARCH_PRIO_LEAST_MAX = INT16_MAX ,
  __VSF_ARCH_PRIO_LEAST_MIN = INT16_MIN ,
  VSF_ARCH_PRIO_INVALID = -1 ,
  vsf_arch_prio_invalid = -1 ,
  VSF_ARCH_PRIO_ENABLE_ALL = 0x100 ,
  vsf_arch_prio_enable_all = 0x100 ,
  VSF_ARCH_PRIO_DISABLE_ALL = 0 ,
  vsf_arch_prio_disable_all = 0 ,
  vsf_arch_prio_highest = ((VSF_ARCH_PRI_NUM - 1 - (__vsf_arch_prio_index_number - 1))) & 0xFF ,
  VSF_ARCH_PRIO_HIGHEST = vsf_arch_prio_highest
}
 

Functions

void vsf_arch_add_text_region (vsf_arch_text_region_t *region)
 
uint_fast16_t vsf_arch_get_callstack (uintptr_t sp, uintptr_t *callstack, uint_fast16_t callstack_num)
 

Variables

__VSF_VPLT_DECORATOR__ vsf_arch_abi_vplt_t vsf_arch_abi_vplt
 

Macro Definition Documentation

◆ __VSF_HEADER_ONLY_SHOW_ARCH_INFO__

#define __VSF_HEADER_ONLY_SHOW_ARCH_INFO__

◆ __LITTLE_ENDIAN

#define __LITTLE_ENDIAN   1

◆ __BYTE_ORDER

#define __BYTE_ORDER   __LITTLE_ENDIAN

◆ VSF_ARCH_CFG_CALLSTACK_TRACE

#define VSF_ARCH_CFG_CALLSTACK_TRACE   ENABLED

◆ VSF_ARCH_SWI_NUM

#define VSF_ARCH_SWI_NUM   1

◆ VSF_SYSTIMER_CFG_IMPL_MODE

#define VSF_SYSTIMER_CFG_IMPL_MODE   VSF_SYSTIMER_IMPL_WITH_NORMAL_TIMER
Note
by default, use tickless mode

◆ __VSF_ARCH_SYSTIMER_BITS

#define __VSF_ARCH_SYSTIMER_BITS   24

◆ vsf_arch_wakeup

#define vsf_arch_wakeup (   void)

◆ __VSF_ARCH_PRI_INDEX

#define __VSF_ARCH_PRI_INDEX (   __N,
  __UNUSED 
)     __vsf_arch_prio_index_##__N = (__N),

◆ __VSF_ARCH_PRI

#define __VSF_ARCH_PRI (   __N,
  __BIT 
)
Value:
VSF_ARCH_PRIO_##__N = \
((VSF_ARCH_PRI_NUM - 1 - __vsf_arch_prio_index_##__N)) & 0xFF, \
vsf_arch_prio_##__N = \
((VSF_ARCH_PRI_NUM - 1 - __vsf_arch_prio_index_##__N)) & 0xFF,
#define VSF_ARCH_PRI_NUM
Definition arm9_generic.h:46

◆ VSF_APPLET_USE_ARCH_ABI

#define VSF_APPLET_USE_ARCH_ABI   ENABLED

Typedef Documentation

◆ vsf_systimer_tick_t

◆ vsf_arch_prio_t

◆ vsf_arch_abi_vplt_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
__vsf_arch_prio_index_number 

◆ vsf_arch_prio_t

Enumerator
__VSF_ARCH_PRIO_LEAST_MAX 
__VSF_ARCH_PRIO_LEAST_MIN 
VSF_ARCH_PRIO_INVALID 
vsf_arch_prio_invalid 
VSF_ARCH_PRIO_ENABLE_ALL 
vsf_arch_prio_enable_all 
VSF_ARCH_PRIO_DISABLE_ALL 
vsf_arch_prio_disable_all 
vsf_arch_prio_highest 
VSF_ARCH_PRIO_HIGHEST 

Function Documentation

◆ vsf_arch_add_text_region()

void vsf_arch_add_text_region ( vsf_arch_text_region_t region)
extern

◆ vsf_arch_get_callstack()

uint_fast16_t vsf_arch_get_callstack ( uintptr_t  sp,
uintptr_t callstack,
uint_fast16_t  callstack_num 
)
extern

Variable Documentation

◆ vsf_arch_abi_vplt

__VSF_VPLT_DECORATOR__ vsf_arch_abi_vplt_t vsf_arch_abi_vplt
extern