96 lines
4.2 KiB
C
Executable File
96 lines
4.2 KiB
C
Executable File
/*
|
|
Copyright (c), 2001-2022, Shenshu Tech. Co., Ltd.
|
|
*/
|
|
|
|
#ifndef __OT_ERRNO_H__
|
|
#define __OT_ERRNO_H__
|
|
|
|
#include "ot_debug.h"
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#endif /* end of #ifdef __cplusplus */
|
|
|
|
/*
|
|
* 1010 0000b
|
|
* VTOP use APPID from 0~31
|
|
* so, vendor use APPID based on 32
|
|
*/
|
|
#define OT_ERR_APP_ID (0x80000000L + 0x20000000L)
|
|
|
|
/*
|
|
* |----------------------------------------------------------------|
|
|
* | 1 | APP_ID | MOD_ID | ERR_LEVEL | ERR_ID |
|
|
* |----------------------------------------------------------------|
|
|
* |<--><--7bits----><----8bits---><--3bits---><------13bits------->|
|
|
*/
|
|
#define OT_DEFINE_ERR(mod, level, err_id) \
|
|
((td_s32)((OT_ERR_APP_ID) | ((mod) << 16) | ((level) << 13) | (err_id)))
|
|
|
|
/*
|
|
* NOTE! the following defined all common error code,
|
|
* all module must reserved 0~63 for their common error code
|
|
*/
|
|
typedef enum {
|
|
OT_ERR_LEVEL_DEBUG = 0, /* debug-level */
|
|
OT_ERR_LEVEL_INFO, /* informational */
|
|
OT_ERR_LEVEL_NOTICE, /* normal but significant condition */
|
|
OT_ERR_LEVEL_WARNING, /* warning conditions */
|
|
OT_ERR_LEVEL_ERROR, /* error conditions */
|
|
OT_ERR_LEVEL_CRIT, /* critical conditions */
|
|
OT_ERR_LEVEL_ALERT, /* action must be taken immediately */
|
|
OT_ERR_LEVEL_FATAL, /* just for compatibility with previous version */
|
|
OT_ERR_LEVEL_BUTT
|
|
} ot_err_level;
|
|
|
|
typedef enum {
|
|
OT_ERR_INVALID_DEV_ID = 0x1, /* invalid device ID */
|
|
OT_ERR_INVALID_PIPE_ID = 0x2, /* invalid pipe ID */
|
|
OT_ERR_INVALID_CHN_ID = 0x3, /* invalid channel ID */
|
|
OT_ERR_INVALID_LAYER_ID = 0x4, /* invalid channel ID */
|
|
OT_ERR_INVALID_GRP_ID = 0x5, /* invalid group ID */
|
|
|
|
OT_ERR_ILLEGAL_PARAM = 0x7, /* at lease one parameter is illegal
|
|
* eg, an illegal enumeration value */
|
|
OT_ERR_EXIST = 0x8, /* resource exists */
|
|
OT_ERR_UNEXIST = 0x9, /* resource not exists */
|
|
OT_ERR_NULL_PTR = 0xa, /* using a NULL pointer */
|
|
OT_ERR_NOT_CFG = 0xb, /* try to enable or initialize system, device
|
|
** or channel, before configing attribute */
|
|
OT_ERR_NOT_SUPPORT = 0xc, /* operation or type is not supported by NOW */
|
|
OT_ERR_NOT_PERM = 0xd, /* operation is not permitted
|
|
** eg, try to change static attribute */
|
|
OT_ERR_NOT_ENABLE = 0x10,
|
|
OT_ERR_NOT_DISABLE = 0x11,
|
|
OT_ERR_NOT_START = 0x12,
|
|
OT_ERR_NOT_STOP = 0x13,
|
|
OT_ERR_NO_MEM = 0x14, /* failure caused by malloc memory */
|
|
OT_ERR_NO_BUF = 0x15, /* failure caused by malloc buffer */
|
|
OT_ERR_BUF_EMPTY = 0x16, /* no data in buffer */
|
|
OT_ERR_BUF_FULL = 0x17, /* no buffer for new data */
|
|
OT_ERR_NOT_READY = 0x18, /* System is not ready, maybe not initialed or
|
|
** loaded. Returning the error code when opening
|
|
** a device file failed. */
|
|
OT_ERR_TIMEOUT = 0x20,
|
|
OT_ERR_BAD_ADDR = 0x21, /* bad address,
|
|
** eg. used for copy_from_user & copy_to_user */
|
|
OT_ERR_BUSY = 0x22, /* resource is busy,
|
|
** eg. destroy a venc chn without unregister it */
|
|
OT_ERR_SIZE_NOT_ENOUGH = 0x23, /* buffer size is smaller than the actual size required */
|
|
|
|
OT_ERR_NOT_BINDED = 0x24,
|
|
OT_ERR_BINDED = 0x25,
|
|
OT_ERR_BUTT = 0x3f, /* maximum code, private error code of all modules
|
|
** must be greater than it */
|
|
} ot_errno;
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* __OT_ERRNO_H__ */
|