Files
Linux_Drivers/freertos/cvitek/common/include/cv1835/cvi_errno.h
carbon ca03037500 freertos: release the generic version source code
freertos runs on the second core (small one) of the CPU
2023-10-19 14:31:43 +08:00

109 lines
3.5 KiB
C

/*
* Copyright (C) Cvitek Co., Ltd. 2019-2020. All rights reserved.
*
* File Name: include/cvi_errno.h
* Description:
* error code definition.
*/
#ifndef __CVI_ERRNO_H__
#define __CVI_ERRNO_H__
#include "cvi_debug.h"
#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif /* End of #ifdef __cplusplus */
#ifndef CVI_ERR_APPID
#define CVI_ERR_APPID (0x00000000L)
#endif
typedef enum _ERR_LEVEL_E {
EN_ERR_LEVEL_DEBUG = 0, /* debug-level */
EN_ERR_LEVEL_INFO, /* informational */
EN_ERR_LEVEL_NOTICE, /* normal but significant condition */
EN_ERR_LEVEL_WARNING, /* warning conditions */
EN_ERR_LEVEL_ERROR, /* error conditions */
EN_ERR_LEVEL_CRIT, /* critical conditions */
EN_ERR_LEVEL_ALERT, /* action must be taken immediately */
EN_ERR_LEVEL_FATAL, /* just for compatibility with previous version */
EN_ERR_LEVEL_BUTT
} ERR_LEVEL_E;
/****************************************************************************** */
/*|----------------------------------------------------------------|*/
/*| 11| APP_ID | MOD_ID | ERR_LEVEL | ERR_ID |*/
/*|----------------------------------------------------------------|*/
/*|<--><--6bits----><----8bits---><--3bits---><------13bits------->|*/
/*******************************************************************************/
#define CVI_DEF_ERR(module, level, errid) \
((CVI_S32)(0xC0000000L | (CVI_ERR_APPID) | ((module) << 16) | ((level)<<13) | (errid)))
/* NOTE! the following defined all common error code, */
/*** all module must reserved 0~63 for their common error code*/
typedef enum _EN_ERR_CODE_E {
EN_ERR_INVALID_DEVID = 1, /* invalid device ID */
EN_ERR_INVALID_CHNID = 2, /* invalid channel ID*/
EN_ERR_ILLEGAL_PARAM = 3,
/* at least one parameter is illegal*/
/* eg, an illegal enumeration value */
EN_ERR_EXIST = 4, /* resource exists*/
EN_ERR_UNEXIST = 5, /* resource unexists */
EN_ERR_NULL_PTR = 6, /* using a NULL point*/
EN_ERR_NOT_CONFIG = 7,
/* try to enable or initialize system, device*/
/* or channel, before configing attribute*/
EN_ERR_NOT_SUPPORT = 8,
/* operation or type is not supported by NOW*/
EN_ERR_NOT_PERM = 9,
/* operation is not permitted*/
/* eg, try to change static attribute*/
EN_ERR_INVALID_PIPEID = 10,
/* invalid pipe ID*/
EN_ERR_INVALID_GRPID = 11,
/* invalid group ID*/
EN_ERR_NOMEM = 12,
/* failure caused by malloc memory*/
EN_ERR_NOBUF = 13,
/* failure caused by malloc buffer*/
EN_ERR_BUF_EMPTY = 14,
/* no data in buffer */
EN_ERR_BUF_FULL = 15,
/* no buffer for new data*/
EN_ERR_SYS_NOTREADY = 16,
/* System is not ready, maybe not initialized or*/
/* loaded. Returning the error code when opening*/
/* a device file failed.*/
EN_ERR_BADADDR = 17,
/* bad address,*/
/* eg. used for copy_from_user & copy_to_user*/
EN_ERR_BUSY = 18,
/* resource is busy,*/
/* eg. destroy a venc chn without unregister it */
EN_ERR_SIZE_NOT_ENOUGH = 19,
/* buffer size is smaller than the actual size required */
EN_ERR_INVALID_VB = 20,
/* invalid VB handle */
EN_ERR_BUTT = 63,
/* maximum code, private error code of all modules*/
/* must be greater than it */
} EN_ERR_CODE_E;
#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* __cplusplus */
#endif /* __CVI_ERRNO_H__ */