VSF Documented
rv_generic.h File Reference
#include "hal/vsf_hal_cfg.h"
#include "hal/driver/driver.h"

Go to the source code of this file.

Macros

#define __VSF_HEADER_ONLY_SHOW_ARCH_INFO__
 
#define __BYTE_ORDER   __LITTLE_ENDIAN
 
#define __VSF_ARCH_SYSTIMER_BITS   64
 
#define VSF_ARCH_SWI_NUM   0
 
#define VSF_ARCH_PRI_NUM   8
 
#define VSF_SYSTIMER_CFG_IMPL_MODE   VSF_SYSTIMER_IMPL_WITH_COMP_TIMER
 
#define VSF_ARCH_CFG_CALLSTACK_TRACE   DISABLED
 
#define vsf_arch_wakeup()
 
#define __VSF_ARCH_PRIO_DEFINED
 
#define VSF_ARCH_SETJMP   vsf_arch_rv_setjmp
 
#define VSF_ARCH_LONGJMP   vsf_arch_rv_longjmp
 

Typedefs

typedef uint32_t vsf_gint_state_t
 

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)
 

Macro Definition Documentation

◆ __VSF_HEADER_ONLY_SHOW_ARCH_INFO__

#define __VSF_HEADER_ONLY_SHOW_ARCH_INFO__

◆ __BYTE_ORDER

#define __BYTE_ORDER   __LITTLE_ENDIAN

◆ __VSF_ARCH_SYSTIMER_BITS

#define __VSF_ARCH_SYSTIMER_BITS   64

◆ VSF_ARCH_SWI_NUM

#define VSF_ARCH_SWI_NUM   0

◆ VSF_ARCH_PRI_NUM

#define VSF_ARCH_PRI_NUM   8

◆ VSF_SYSTIMER_CFG_IMPL_MODE

#define VSF_SYSTIMER_CFG_IMPL_MODE   VSF_SYSTIMER_IMPL_WITH_COMP_TIMER

◆ VSF_ARCH_CFG_CALLSTACK_TRACE

#define VSF_ARCH_CFG_CALLSTACK_TRACE   DISABLED

◆ vsf_arch_wakeup

#define vsf_arch_wakeup ( void)

◆ __VSF_ARCH_PRIO_DEFINED

#define __VSF_ARCH_PRIO_DEFINED
Note
vsf_arch_prio_t is provided here ONLY as a type, for builds where ! the chip device.h is intentionally unreachable(chip-independent ! VSF_APPLET builds, see hal/driver/driver.h). The real enum with ! concrete values lives in the chip device.h. ! CONCRETE PRIORITY VALUES ARE DELIBERATELY NOT DEFINED HERE: ! RISC-V has no standard priority scheme - PLIC(more levels, ! larger value = higher priority, 0 = disabled), Qingke ! PFIC(IPRIOR-encoded, smaller value = higher preemption priority) ! and CLIC all differ in both count and direction, so any value ! defined at this level would be silently wrong on some chip ! (eg: 0 means "interrupt disabled" on PLIC but "highest" on PFIC). ! Code needing actual priorities must use the values from the chip ! device.h of the target it runs on - a chip-independent build ! cannot and must not pick one.

◆ VSF_ARCH_SETJMP

#define VSF_ARCH_SETJMP   vsf_arch_rv_setjmp

◆ VSF_ARCH_LONGJMP

#define VSF_ARCH_LONGJMP   vsf_arch_rv_longjmp

Typedef Documentation

◆ vsf_gint_state_t

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
Generated from commit: vsfteam/vsf@4327394