11bd4fe43Sopenharmony_ci/* 21bd4fe43Sopenharmony_ci * Copyright (c) 2020 Huawei Device Co., Ltd. 31bd4fe43Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 41bd4fe43Sopenharmony_ci * you may not use this file except in compliance with the License. 51bd4fe43Sopenharmony_ci * You may obtain a copy of the License at 61bd4fe43Sopenharmony_ci * 71bd4fe43Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 81bd4fe43Sopenharmony_ci * 91bd4fe43Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 101bd4fe43Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 111bd4fe43Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 121bd4fe43Sopenharmony_ci * See the License for the specific language governing permissions and 131bd4fe43Sopenharmony_ci * limitations under the License. 141bd4fe43Sopenharmony_ci */ 151bd4fe43Sopenharmony_ci 161bd4fe43Sopenharmony_ci#ifndef _SYSTEM_CONFIG_H 171bd4fe43Sopenharmony_ci#define _SYSTEM_CONFIG_H 181bd4fe43Sopenharmony_ci 191bd4fe43Sopenharmony_ci#ifdef __cplusplus 201bd4fe43Sopenharmony_ci#if __cplusplus 211bd4fe43Sopenharmony_ciextern "C" { 221bd4fe43Sopenharmony_ci#endif /* __cplusplus */ 231bd4fe43Sopenharmony_ci#endif /* __cplusplus */ 241bd4fe43Sopenharmony_ci 251bd4fe43Sopenharmony_ci/* ============================================================================= 261bd4fe43Sopenharmony_ci LiteOS kernel version configuration 271bd4fe43Sopenharmony_ci============================================================================= */ 281bd4fe43Sopenharmony_ci/** 291bd4fe43Sopenharmony_ci * @ingroup los_config 301bd4fe43Sopenharmony_ci * Version number 311bd4fe43Sopenharmony_ci */ 321bd4fe43Sopenharmony_ci#define LITEOS_VER 331bd4fe43Sopenharmony_ci 341bd4fe43Sopenharmony_ci/** system source configuration**/ 351bd4fe43Sopenharmony_ci/** 361bd4fe43Sopenharmony_ci * @ingroup los_config 371bd4fe43Sopenharmony_ci * system clock 381bd4fe43Sopenharmony_ci */ 391bd4fe43Sopenharmony_ci#ifdef HI_BOARD_ASIC 401bd4fe43Sopenharmony_ci#define OS_SYS_CLOCK_CONFIG 160000000 411bd4fe43Sopenharmony_ci#else 421bd4fe43Sopenharmony_ci#define OS_SYS_CLOCK_CONFIG 53000000 431bd4fe43Sopenharmony_ci#endif 441bd4fe43Sopenharmony_ci 451bd4fe43Sopenharmony_ci/** system source configuration**/ 461bd4fe43Sopenharmony_ci/** 471bd4fe43Sopenharmony_ci * @ingroup los_config 481bd4fe43Sopenharmony_ci * Number of Ticks in one second 491bd4fe43Sopenharmony_ci */ 501bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TICK_PER_SECOND_CONFIG 100 511bd4fe43Sopenharmony_ci 521bd4fe43Sopenharmony_ci/** system source configuration**/ 531bd4fe43Sopenharmony_ci/** 541bd4fe43Sopenharmony_ci * @ingroup los_config 551bd4fe43Sopenharmony_ci * Maximum supported number of tasks except the idle task rather than the number of usable tasks 561bd4fe43Sopenharmony_ci */ 571bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TSK_LIMIT_CONFIG 32 581bd4fe43Sopenharmony_ci 591bd4fe43Sopenharmony_ci/** 601bd4fe43Sopenharmony_ci * @ingroup los_config 611bd4fe43Sopenharmony_ci * Maximum supported number of semaphores 621bd4fe43Sopenharmony_ci */ 631bd4fe43Sopenharmony_ci#define LOSCFG_BASE_IPC_SEM_LIMIT_CONFIG 32 641bd4fe43Sopenharmony_ci/** 651bd4fe43Sopenharmony_ci * @ingroup los_config 661bd4fe43Sopenharmony_ci * Maximum supported number of mutexes 671bd4fe43Sopenharmony_ci */ 681bd4fe43Sopenharmony_ci#define LOSCFG_BASE_IPC_MUX_LIMIT_CONFIG 38 691bd4fe43Sopenharmony_ci 701bd4fe43Sopenharmony_ci/** 711bd4fe43Sopenharmony_ci * @ingroup los_config 721bd4fe43Sopenharmony_ci * Maximum supported number of queues rather than the number of usable queues 731bd4fe43Sopenharmony_ci */ 741bd4fe43Sopenharmony_ci#define LOSCFG_BASE_IPC_QUEUE_LIMIT_CONFIG 32 751bd4fe43Sopenharmony_ci/** 761bd4fe43Sopenharmony_ci * @ingroup los_config 771bd4fe43Sopenharmony_ci * Maximum supported number of software timers rather than the number of usable software timers 781bd4fe43Sopenharmony_ci */ 791bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_SWTMR_LIMIT_CONFIG 32 801bd4fe43Sopenharmony_ci 811bd4fe43Sopenharmony_ci/** 821bd4fe43Sopenharmony_ci * @ingroup los_config 831bd4fe43Sopenharmony_ci * Default task stack size 841bd4fe43Sopenharmony_ci */ 851bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TSK_DEFAULT_STACK_SIZE_CONFIG (0x1000UL) 861bd4fe43Sopenharmony_ci/** 871bd4fe43Sopenharmony_ci * @ingroup los_config 881bd4fe43Sopenharmony_ci * Idle task stack size. 891bd4fe43Sopenharmony_ci */ 901bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TSK_IDLE_STACK_SIZE_CONFIG (0x400UL) 911bd4fe43Sopenharmony_ci/** 921bd4fe43Sopenharmony_ci * @ingroup los_config 931bd4fe43Sopenharmony_ci * Idle task stack size. 941bd4fe43Sopenharmony_ci */ 951bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TSK_SWTMR_STACK_SIZE_CONFIG (0x800UL) 961bd4fe43Sopenharmony_ci 971bd4fe43Sopenharmony_ci/** 981bd4fe43Sopenharmony_ci * @ingroup los_config 991bd4fe43Sopenharmony_ci * Minimum stack size. 1001bd4fe43Sopenharmony_ci */ 1011bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TSK_MIN_STACK_SIZE_CONFIG (0x180UL) 1021bd4fe43Sopenharmony_ci/** 1031bd4fe43Sopenharmony_ci * @ingroup los_config 1041bd4fe43Sopenharmony_ci * Stack point align size. 1051bd4fe43Sopenharmony_ci */ 1061bd4fe43Sopenharmony_ci#define LOSCFG_STACK_POINT_ALIGN_SIZE 16 1071bd4fe43Sopenharmony_ci/** 1081bd4fe43Sopenharmony_ci * @ingroup los_config 1091bd4fe43Sopenharmony_ci * Longest execution time of tasks with the same priorities 1101bd4fe43Sopenharmony_ci */ 1111bd4fe43Sopenharmony_ci#define LOSCFG_BASE_CORE_TIMESLICE_TIMEOUT_CONFIG 2 1121bd4fe43Sopenharmony_ci/** 1131bd4fe43Sopenharmony_ci * @ingroup los_cpup 1141bd4fe43Sopenharmony_ci * Number of track items 1151bd4fe43Sopenharmony_ci */ 1161bd4fe43Sopenharmony_ci#define LOSCFG_BASE_MISC_TRACK_COUNT_CONFIG 10 1171bd4fe43Sopenharmony_ci 1181bd4fe43Sopenharmony_ci#define LOSCFG_NMI_SERVICE 0 1191bd4fe43Sopenharmony_ci 1201bd4fe43Sopenharmony_ci#ifdef LOSCFG_DEBUG_KASAN 1211bd4fe43Sopenharmony_ci#define LOSCFG_KASAN_TASK_STACK_LIMIT_NUM 3 1221bd4fe43Sopenharmony_ci#endif 1231bd4fe43Sopenharmony_ci 1241bd4fe43Sopenharmony_ci#define LOSCFG_MEM_POOL_SIZE 0x3C00 1251bd4fe43Sopenharmony_ci 1261bd4fe43Sopenharmony_ci#ifdef __cplusplus 1271bd4fe43Sopenharmony_ci#if __cplusplus 1281bd4fe43Sopenharmony_ci} 1291bd4fe43Sopenharmony_ci#endif /* __cplusplus */ 1301bd4fe43Sopenharmony_ci#endif /* __cplusplus */ 1311bd4fe43Sopenharmony_ci 1321bd4fe43Sopenharmony_ci#endif /* _SYSTEM_CONFIG_H */ 133