⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ssp_except_ppc.h

📁 abstract rtos
💻 H
字号:
#ifdef __cplusplusextern "C"{#endif#ifndef _SSP_EXCEPT_PPC_H_#define _SSP_EXCEPT_PPC_H_#define EXCEPTION_INIT_FLAG           0XABCDABCD#define EXCEPTION_STACK_LAYER         20#define EXCEPTION_STACK_SIZE          128#define EXCEPTION_SAVE_MSG_LEN        1024#define EXCEPTION_RECORD_NUM          8#define EXCEPTION_NVRAM_ADDR          0X0#define EXCEPTION_RESET         0x0100   #define EXCEPTION_CRITINT       0x0100   #define EXCEPTION_MACH_CK       0x0200   #define EXCEPTION_DA            0x0300   #define EXCEPTION_PROTECT       0x0300   #define EXCEPTION_IA            0x0400   #define EXCEPTION_INTRPT        0x0500   #define EXCEPTION_ALIGN         0x0600   #define EXCEPTION_PROGRAM       0x0700   #define EXCEPTION_FLOAT         0x0800   #define EXCEPTION_DCRMNTR       0x0900   #define EXCEPTION_IOERROR       0x0A00   #define EXCEPTION_SYSCALL       0x0C00   #define EXCEPTION_TRACE         0x0D00   #define EXCEPTION_TIMERS        0x1000   #define EXCEPTION_FIT_403       0x1010   #define EXCEPTION_WATCHDG       0x1020   #define EXCEPTION_IA_BP         0x1300   #define EXCEPTION_ITLB          0x1000   #define EXCEPTION_DLTLB         0x1100   #define EXCEPTION_DSTLB         0x1200   #define EXCEPTION_RUNMODE       0x2000   #define EXCEPTION_DEBUG         0x2000   #define EXCEPTION_SEI821        0x1000   #define EXCEPTION_ITLB821_MISS  0x1100   #define EXCEPTION_DTLB821_MISS  0x1200   #define EXCEPTION_ITLB821_ERR   0x1300   #define EXCEPTION_DTLB821_ERR   0x1400   #define EXCEPTION_DA_BP821      0x1C00   #define EXCEPTION_IA_BP821      0x1D00   struct stack_layer{    U32 stack_addr;        U32 next_inst_addr;};struct reg_set{    U32 gpr[32];            U32 msr;                U32 lr;                 U32 ctr;                U32 cr;                 U32 xer;                U32 dar;                U32 dsisr;              U32 fpcsr;          };typedef struct exception_item{    U32 m_ulVecNum;                         U32 m_ulErrorNo;                        S8  m_cTaskName[AOS_NAME_LEN];          U8  m_uDate;                            U8  m_uHour;    U8  m_uMinute;    U8  m_uSecond;    U32 m_ulMillisec;    U32 m_ulPc;                             U32 m_ulSp;                             U32 m_ulIntCount;                       U32 m_aStack[EXCEPTION_STACK_SIZE];     struct stack_layer m_aStackLayer[EXCEPTION_STACK_LAYER];     struct reg_set m_aReg;              #if( CONFIG_BOARD_GMPU == TRUE || CONFIG_BOARD_GDSP == TRUE )    U32 msg_status;    U32 last_msg_ptr;    U32 last_msg_size;    U8 m_aLastMsg[EXCEPTION_SAVE_MSG_LEN];#endif    }EXCEPTION_ITEM_S;typedef struct exception_buf{    U32 m_ulInitFlag;         U32 m_ulCounter;          U32 m_ulIndex;            EXCEPTION_ITEM_S m_aItem[EXCEPTION_RECORD_NUM];}EXCEPTION_BUF_S;extern EXCEPTION_BUF_S *g_pException;extern S8 g_aRegName[][10];#if CONFIG_OS_WINDOWStypedef struct reg_set REG_SET;typedef struct esfppc{    U32	        spCopy;    U32	        vecOffset;    U32	        _errno;    U32         dar;    U32         dsisr;    U32         fpcsr;    REG_SET	    regSet;    U32	        pad0;    U32	        pad1;    U32	        pad2;}ESFPPC;#endifU32 m_except_init();#endif#ifdef __cplusplus}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -