📄 hi_error.h
字号:
/****************************************************************************** Copyright (C), 2001-2011, Hisilicon Tech. Co., Ltd. ****************************************************************************** File Name : hi_error.h Version : Initial Draft Author : Hisilicon multimedia software group Created : 2005/4/23 Last Modified : Description : 错误代码的定义 Function List : History : 1.Date : 2005/4/20 Author : T41030 Modification: Created file******************************************************************************/#ifndef __HI_ERROR_H__#define __HI_ERROR_H__#ifdef __cplusplus#if __cplusplusextern "C"{#endif#endif /* __cplusplus *//* 系统错误码的定义 31 24 23 16 15 0 ----------------------------------------------- | 模块 | 子模块 | 错误码(子模块定义) | -----------------------------------------------*/#define ERR_SUB_MODULE_BASE(module, submodule) \ (( module << 24 ) | ( submodule << 16 )) #define ERR_NUMBER(err, base) ( (base) | (err) ) /*****************************************************************************通用模块错误代码定义****************************************************************************//*0x00XX*/#define ERR_GENERAL_BASE ERR_SUB_MODULE_BASE(MODULE_GENERAL, 0)#define ERR_GEN_NOT_ENOUGH_MEMORY ERR_NUMBER(2, ERR_GENERAL_BASE) /*0x0002*/#define ERR_GEN_INVALID_POINTER ERR_NUMBER(3, ERR_GENERAL_BASE) /*0x0003*/#define ERR_GEN_OVERFLOW ERR_NUMBER(4, ERR_GENERAL_BASE) /*0x0004*/#define ERR_GEN_OUT_OF_BOUND ERR_NUMBER(5, ERR_GENERAL_BASE) /*0x0004*/#define ERR_GEN_INVALID_FP ERR_NUMBER(6, ERR_GENERAL_BASE) /*0x0004*//*****************************************************************************驱动模块, 子模块错误代码定义****************************************************************************/#define ERR_DRV_VI_BASE ERR_SUB_MODULE_BASE(MODULE_DRV, DRV_SUB_MODULE_VI)#define ERR_DRV_VO_BASE ERR_SUB_MODULE_BASE(MODULE_DRV, DRV_SUB_MODULE_VI)/*Add By You , man...........*//*****************************************************************************系统模块,ARM ZSP 通讯子模块错误代码定义****************************************************************************//*00000001-00000001-xxxxxxxx-xxxxxxxx 0x11XX*/#define ERR_SYS_AZ_BASE ERR_SUB_MODULE_BASE(MODULE_SYS, SYS_SUB_MODULE_AZ)#define ERR_AZMSG_INVALID_MSGPOOL ERR_NUMBER(1, ERR_SYS_AZ_BASE) /*0x1101*/#define ERR_AZMSG_INVALID_MSG ERR_NUMBER(2, ERR_SYS_AZ_BASE) /*0x1102*/#define ERR_AZMSG_NO_SPACE_TOSEND ERR_NUMBER(3, ERR_SYS_AZ_BASE) /*0x1103*/#define ERR_AZMSG_NO_MSG_TORECV ERR_NUMBER(4, ERR_SYS_AZ_BASE)#define ERR_AZMSG_INVALID_MSGDATA ERR_NUMBER(5, ERR_SYS_AZ_BASE) /*0x1105*/#define ERR_AZMSG_OVERFLOW ERR_NUMBER(6, ERR_SYS_AZ_BASE) /*0x1106*/#define ERR_AZMSG_EMPTY ERR_NUMBER(7, ERR_SYS_AZ_BASE) /*0x1107*/#define ERR_AZMSG_READY_TIMEOUT ERR_NUMBER(8, ERR_SYS_AZ_BASE) /*0x1108*//*Ring Buffer*//*00000001-00000002-xxxxxxxx-xxxxxxxx 0x12XX*/#define ERR_SYS_RB_BASE ERR_SUB_MODULE_BASE(MODULE_SYS, SYS_SUB_MODULE_RB)#define ERR_RB_ERROR ERR_NUMBER(0, ERR_SYS_RB_BASE) /*0x1101*/#define ERR_RB_INIT ERR_NUMBER(1, ERR_SYS_RB_BASE) /*0x1101*/#define ERR_RB_OVERFLOW ERR_NUMBER(2, ERR_SYS_RB_BASE) /*0x1102*/#define ERR_RB_READ_NOTENOGH ERR_NUMBER(3, ERR_SYS_RB_BASE) /*0x1103*/#define ERR_RB_WRITE_NOTENOGH ERR_NUMBER(4, ERR_SYS_RB_BASE) /*0x1104*/#define ERR_RB_NULL_BUF ERR_NUMBER(5, ERR_SYS_RB_BASE) /*0x1104*//*Buffer Manager*//*00000001-00000003-xxxxxxxx-xxxxxxxx 0x13XX*/#define ERR_SYS_BM_BASE ERR_SUB_MODULE_BASE(MODULE_SYS, SYS_SUB_MODULE_BM)#define ERR_BM_ERROR ERR_NUMBER(0, ERR_SYS_BM_BASE) /*0x1301*/#define ERR_BM_INIT ERR_NUMBER(1, ERR_SYS_BM_BASE) /*0x1301*/#define ERR_BM_OVERFLOW ERR_NUMBER(2, ERR_SYS_BM_BASE) /*0x1302*/#define ERR_BM_READ_NOTENOGH ERR_NUMBER(3, ERR_SYS_BM_BASE) /*0x1303*/#define ERR_BM_WRITE_NOTENOGH ERR_NUMBER(4, ERR_SYS_BM_BASE) /*0x1304*/#define ERR_BM_INVALIDLEN ERR_NUMBER(5, ERR_SYS_BM_BASE) /*0x1304*//*Message Queue*//*00000001-00000004-xxxxxxxx-xxxxxxxx 0x14XX*/#define ERR_SYS_MQ_BASE ERR_SUB_MODULE_BASE(MODULE_SYS, SYS_SUB_MODULE_MQ)/*Message Queue's Normal Error*/#define ERR_MQ_ERROR ERR_NUMBER(0, ERR_SYS_MQ_BASE)/*the Queue is invalid*/#define ERR_MQ_QUEUE_INVALUD ERR_NUMBER(1, ERR_SYS_MQ_BASE)/*no enough space to write to queue*/#define ERR_MQ_QUEUE_OVERFLOW ERR_NUMBER(2, ERR_SYS_MQ_BASE)/*the queue is empty to read */#define ERR_MQ_QUEUE_EMPTY ERR_NUMBER(3, ERR_SYS_MQ_BASE)/*the message is invalid*/#define ERR_MQ_MSG_INVALID ERR_NUMBER(4, ERR_SYS_MQ_BASE)/*the message length is null*/#define ERR_MQ_MSG_LEN_INVALID ERR_NUMBER(5, ERR_SYS_MQ_BASE)/*the buffer is invalid*/#define ERR_MQ_BUFFER_INVALID ERR_NUMBER(6, ERR_SYS_MQ_BASE)/*------------- MMF Module Error Number Define ---------------0x31xx----------*/#define ERR_MMF_INPUT_BASE \ ERR_SUB_MODULE_BASE(MODULE_MMF, MMF_SUB_MODULE_INPUT)#define ERR_INPUT_STREAM_ERROR \ ERR_NUMBER(1, ERR_MMF_INPUT_BASE) /*0x3102*/#define ERR_INPUT_STREAM_NOTSUPPORT \ ERR_NUMBER(2, ERR_MMF_INPUT_BASE) /*0x3102*/#define ERR_INPUT_FILE_OPEN_ERROR \ ERR_NUMBER(3, ERR_MMF_INPUT_BASE) /*0x3102*/#define ERR_MMF_STREAM_BASE \ ERR_SUB_MODULE_BASE(MODULE_MMF, MMF_SUB_MODULE_STREAM)#define ERR_STREAM_EMPTY \ ERR_NUMBER(1, MMF_SUB_MODULE_STREAM) /*0x3601*/#ifdef DEBUG#define HI_ERRNO(err) \ do{\ WRITE_LOG_ERROR("<ERROR>%s:%#x\n", #err, err );\ return (err);\ }while(0); #else#define HI_ERRNO(err) return (err)#endif#ifdef DEBUG#define EXIT(msg, errno) \ WRITE_LOG_ERROR("%s exit:%d.{%s:%d}\n", msg, errno,__FILE__, __LINE__); \ exit(errno) #else#define EXIT(msg, errno) (exit(errno))#endif#ifdef __cplusplus#if __cplusplus}#endif#endif /* __cplusplus */#endif /* __HI_ERROR_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -