WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
exception_riscv.c 文件参考
#include "platform_core.h"
#include "exception.h"
#include "chip_io.h"
#include "preserve.h"
#include "debug_print.h"
#include "securec.h"
#include "non_os_reboot.h"
#include "reboot_porting.h"
#include "watchdog_porting.h"
#include "cpu_utils.h"
#include "non_os.h"
#include "oam_trace.h"
#include "tcxo.h"
#include "los_sched_pri.h"
#include "los_task_pri.h"
#include "los_sem_pri.h"
#include "fcntl.h"
#include "unistd.h"
#include "ipc.h"
#include "ipc_actions.h"
exception_riscv.c 的引用(Include)关系图:

宏定义

#define EXCEPT_REBOOT_DELAY_MS   3000
 
#define IPC_NOTIFY_APPS_TIMEOUT_MS   16000
 
#define SW_PRINT_DELAY   200ULL
 
#define USER_STACK_PUSH_LENGTH   160
 
#define USER_STACK_OFFSET_PER   4
 
#define USER_STACK_PRINT_DEPTH   30
 
#define MAX_CALL_STACK   20
 
#define CALLSTACK_RA_POS   4
 
#define CALLSTACK_FP_POS   8
 
#define EXC_STACK_INFO_SIZE   8
 
#define STACK_BOTTROM_INIT_VAL   0xf0f0f0f
 
#define MCAUSE_MASK   0x80000FFF
 
#define NMI_INTERRUPT   0x00000FFF
 
#define SP_OFFSET   0x10
 
#define CONTEXT_OFFSET   (4 * 4 + 33 * 4 + 4)
 

函数

VOID OsExcInfoDisplay (uint32_t excType, const ExcContext *excBufAddr)
 
void back_trace (uint32_t fp)
 
void exc_info_display (const exc_info_t *exc)
 Print exception info.
 
void wait_apps_prepare_for_rebooting (void)
 Wait for the apps to finish the preparing for rebooting. eg. notify the apps and finish coredump if the debug is enable; Wait for the apps refresh the flash.
 
void do_hard_fault_handler (exc_context_t *exc_buf_addr)
 Prototype for the assembly language hard-fault handler. This will setup the stack and attempt to generate a stack trace to aid debug.
 
void do_fault_handler (uint32_t exc_type, exc_context_t *exc_buff_addr)
 
void hal_register_exception_dump_callback (hal_exception_dump_callback callback)
 Register the exception dump callback
 

变量

ExcInfo g_excInfo
 
nmi_proc_func g_nmi_hook = do_hard_fault_handler
 
exc_info_t g_exc_info
 

宏定义说明

◆ CALLSTACK_FP_POS

#define CALLSTACK_FP_POS   8

◆ CALLSTACK_RA_POS

#define CALLSTACK_RA_POS   4

◆ CONTEXT_OFFSET

#define CONTEXT_OFFSET   (4 * 4 + 33 * 4 + 4)

◆ EXC_STACK_INFO_SIZE

#define EXC_STACK_INFO_SIZE   8

◆ EXCEPT_REBOOT_DELAY_MS

#define EXCEPT_REBOOT_DELAY_MS   3000

◆ IPC_NOTIFY_APPS_TIMEOUT_MS

#define IPC_NOTIFY_APPS_TIMEOUT_MS   16000

◆ MAX_CALL_STACK

#define MAX_CALL_STACK   20

◆ MCAUSE_MASK

#define MCAUSE_MASK   0x80000FFF

◆ NMI_INTERRUPT

#define NMI_INTERRUPT   0x00000FFF

◆ SP_OFFSET

#define SP_OFFSET   0x10

◆ STACK_BOTTROM_INIT_VAL

#define STACK_BOTTROM_INIT_VAL   0xf0f0f0f

◆ SW_PRINT_DELAY

#define SW_PRINT_DELAY   200ULL

◆ USER_STACK_OFFSET_PER

#define USER_STACK_OFFSET_PER   4

◆ USER_STACK_PRINT_DEPTH

#define USER_STACK_PRINT_DEPTH   30

◆ USER_STACK_PUSH_LENGTH

#define USER_STACK_PUSH_LENGTH   160

函数说明

◆ OsExcInfoDisplay()

VOID OsExcInfoDisplay ( uint32_t  excType,
const ExcContext *  excBufAddr 
)
extern

变量说明

◆ g_exc_info

exc_info_t g_exc_info

◆ g_excInfo

ExcInfo g_excInfo
extern

◆ g_nmi_hook