1 /* 2 * Copyright (c) 2009-2022 Huawei Technologies Co., Ltd. All rights reserved. 3 * 4 * UniProton is licensed under Mulan PSL v2. 5 * You can use this software according to the terms and conditions of the Mulan PSL v2. 6 * You may obtain a copy of Mulan PSL v2 at: 7 * http://license.coscl.org.cn/MulanPSL2 8 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, 9 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, 10 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. 11 * See the Mulan PSL v2 for more details. 12 * Create: 2009-12-22 13 * Description: 通用错误码定义头文件。 14 */ 15 #ifndef PRT_ERRNO_H 16 #define PRT_ERRNO_H 17 18 #include "prt_typedef.h" 19 20 #ifdef __cplusplus 21 #if __cplusplus 22 extern "C" { 23 #endif /* __cpluscplus */ 24 #endif /* __cpluscplus */ 25 26 /* 27 * OS错误码标记位,0x00表示OS 28 * 29 */ 30 #define ERRNO_OS_ID (0x00U << 16) 31 32 /* 33 * 定义错误的等级:提示级别 34 * 35 */ 36 #define ERRTYPE_NORMAL (0x00U << 24) 37 38 /* 39 * 定义错误的等级:告警级别 40 * 41 */ 42 #define ERRTYPE_WARN (0x01U << 24) 43 44 /* 45 * 定义错误的等级:严重级别 46 * 47 */ 48 #define ERRTYPE_ERROR (0x02U << 24) 49 50 /* 51 * 定义错误的等级:致命级别 52 * 53 */ 54 #define ERRTYPE_FATAL (0x03U << 24) 55 56 /* 57 * @brief 定义OS致命错误。 58 * 59 * @par 描述 60 * 宏定义,定义OS致命错误。 61 * 62 * @attention 无 63 * 64 * @param mid [IN] 模块ID编号。 65 * @param errno [IN] 错误码编号。 66 * 67 * @retval 无 68 * @par 依赖 69 * <li>prt_errno.h:该宏定义所在的头文件。</li> 70 * @see OS_ERRNO_BUILD_ERROR | OS_ERRNO_BUILD_WARN | OS_ERRNO_BUILD_NORMAL 71 */ 72 #define OS_ERRNO_BUILD_FATAL(mid, errno) (ERRTYPE_FATAL | ERRNO_OS_ID | ((U32)(mid) << 8) | (errno)) 73 74 /* 75 * @brief 定义OS严重错误 76 * 77 * @par 描述 78 * 宏定义,定义OS严重错误 79 * 80 * @attention 无 81 * @param mid [IN] 模块ID编号。 82 * @param errno [IN] 错误码编号。 83 * 84 * @retval 无 85 * @par 依赖 86 * <li>prt_errno.h:该宏定义所在的头文件。</li> 87 * @see OS_ERRNO_BUILD_FATAL | OS_ERRNO_BUILD_WARN | OS_ERRNO_BUILD_NORMAL 88 */ 89 #define OS_ERRNO_BUILD_ERROR(mid, errno) (ERRTYPE_ERROR | ERRNO_OS_ID | ((U32)(mid) << 8) | (errno)) 90 91 #ifdef __cplusplus 92 #if __cplusplus 93 } 94 #endif /* __cpluscplus */ 95 #endif /* __cpluscplus */ 96 97 #endif /* PRT_ERRNO_H */ 98