• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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: UniProton配置头文件,裁剪开关和配置项。
14  */
15 #ifndef PRT_CONFIG_H
16 #define PRT_CONFIG_H
17 
18 #include "prt_buildef.h"
19 #include "prt_typedef.h"
20 
21 #ifdef __cplusplus
22 #if __cplusplus
23 extern "C" {
24 #endif
25 #endif
26 
27 /* ***************************** 配置系统基本信息 ******************************* */
28 /* 芯片主频 */
29 #define OS_SYS_CLOCK                                    0
30 
31 /* ***************************** 中断模块配置 ************************** */
32 /* 硬中断最大支持个数 */
33 #define OS_HWI_MAX_NUM_CONFIG                           150
34 
35 /* ***************************** 配置Tick中断模块 *************************** */
36 /* Tick中断模块裁剪开关 */
37 #define OS_INCLUDE_TICK                                 YES
38 /* Tick中断时间间隔,tick处理时间不能超过1/OS_TICK_PER_SECOND(s) */
39 #define OS_TICK_PER_SECOND                              5000
40 
41 /* ***************************** 配置定时器模块 ***************************** */
42 /* 基于TICK的软件定时器裁剪开关 */
43 #define OS_INCLUDE_TICK_SWTMER                          NO
44 /* 基于TICK的软件定时器最大个数 */
45 #define OS_TICK_SWITIMER_MAX_NUM                        8
46 
47 /* ***************************** 配置任务模块 ******************************* */
48 /* 任务模块裁剪开关 */
49 #define OS_INCLUDE_TASK                                 YES
50 /* 最大支持的任务数,最大共支持254个 */
51 #define OS_TSK_MAX_SUPPORT_NUM                          8
52 /* 缺省的任务栈大小 */
53 #define OS_TSK_DEFAULT_STACK_SIZE                       0x800
54 /* IDLE任务栈的大小 */
55 #define OS_TSK_IDLE_STACK_SIZE                          0x800
56 /* 任务栈初始化魔术字,默认是0xCA,只支持配置一个字节 */
57 #define OS_TSK_STACK_MAGIC_WORD                         0xCA
58 
59 /* ***************************** 配置CPU占用率及CPU告警模块 **************** */
60 /* CPU占用率模块裁剪开关 */
61 #define OS_INCLUDE_CPUP                                 NO
62 /* 采样时间间隔(单位tick),若其值大于0,则作为采样周期,否则两次调用PRT_CpupNow或PRT_CpupThread间隔作为周期 */
63 #define OS_CPUP_SAMPLE_INTERVAL                         0
64 /* CPU占用率告警动态配置项 */
65 #define OS_CONFIG_CPUP_WARN                             NO
66 /* CPU占用率告警阈值(精度为万分比) */
67 #define OS_CPUP_SHORT_WARN                              0
68 /* CPU占用率告警恢复阈值(精度为万分比) */
69 #define OS_CPUP_SHORT_RESUME                            0
70 
71 /* ***************************** 配置内存管理模块 ************************** */
72 /* 用户可以创建的最大分区数,取值范围[0,253] */
73 #define OS_MEM_MAX_PT_NUM                               10
74 /* 私有FSC内存分区起始地址 */
75 #define OS_MEM_FSC_PT_ADDR                              NULL
76 /* 私有FSC内存分区大小 */
77 #define OS_MEM_FSC_PT_SIZE                              0
78 
79 /* ***************************** 配置信号量管理模块 ************************* */
80 /* 信号量模块裁剪开关 */
81 #define OS_INCLUDE_SEM                                  NO
82 
83 /* 最大支持的信号量数 */
84 #define OS_SEM_MAX_SUPPORT_NUM                          0
85 
86 /* ***************************** 配置队列模块 ******************************* */
87 /* 队列模块裁剪开关 */
88 #define OS_INCLUDE_QUEUE                                NO
89 /* 最大支持的队列数,范围(0,0xFFFF] */
90 #define OS_QUEUE_MAX_SUPPORT_NUM                        10
91 
92 /* ************************* 钩子模块配置 *********************************** */
93 /* 硬中断进入钩子最大支持个数, 范围[0, 255] */
94 #define OS_HOOK_HWI_ENTRY_NUM                           0
95 /* 硬中断退出钩子最大支持个数, 范围[0, 255] */
96 #define OS_HOOK_HWI_EXIT_NUM                            0
97 /* 任务切换钩子最大支持个数, 范围[0, 255] */
98 #define OS_HOOK_TSK_SWITCH_NUM                          0
99 /* IDLE钩子最大支持个数, 范围[0, 255] */
100 #define OS_HOOK_IDLE_NUM                                0
101 
102 #ifdef __cplusplus
103 #if __cplusplus
104 }
105 #endif /* __cpluscplus */
106 #endif /* __cpluscplus */
107 
108 #endif /* PRT_CONFIG_H */
109