zhushengle
509cf59bef
fix: 以g_sysSchedStartTime是否为0判断时间轴是否生效存在极限场景导致调度时间不生效
...
初始化调度时间不以g_sysSchedStartTime是否为0为界限,而以g_sysSchedStartTime是否为64位最大值,
为界限, 避免特殊以下场景:调度开启时系统时间为0,导致初始化的g_sysSchedStartTime还是0,导致
调度启动后获取的调度时间轴始终为0.
Close #I45HP5
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ie0ef4e7d149f09ac466c649c0f2d6538f5322439
2021-08-14 11:30:46 +08:00
JerryH
9709d29b87
fix: 增加MPU功能的开关宏,默认关闭
...
close #I3WE0S
Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: Id193fd555877ac0c6b5b43e5dd5ede32531b86c4
2021-08-10 19:27:14 +08:00
zhushengle
2118c84616
fix: tick 动态化计算优化,减小中断执行时间对系统总体时间的影响,保证软件定时器的响应精度。
...
方案描述:
1.周期软件定时器超时添加一个startTime字段,用于记录当前软件定时器的开始计时的时间,
在定时器响应时,开始时间修改为上一次响应的结束时间(消除了中断执行时间对软件定时器
的影响)。
2. 在执行tick中断的过程当中,持有tick动态计算锁,保证在该过程中不会触发tick周期
的计算,在tick中断结束时统一计算设置。 --- 提升tick中断的执行效率
3. 在设置tick周期时,减掉tick中断执行的时间,减小周期动态化带来的时间误差
4.新增LOSCFG_BASE_CORE_TICK_PER_SECOND_MINI配置宏,用于配置tick中断的最小响应精度
Close #I3YGP1
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ia53e4accce497bce870557c2c3387ce51fa3fed3
2021-08-09 21:16:22 +08:00
openharmony_ci
4fd6a663ac
!235 fix: 修复QUEUE_INFO_S中waitReadTask无法保存大于32的任务编号
...
Merge pull request !235 from kenneth/master
2021-08-02 02:07:12 +00:00
openharmony_ci
1d33f5e4b0
!234 feat: L0 支持Trace
...
Merge pull request !234 from LiteOS/master
2021-07-31 02:58:59 +00:00
LiteOS2021
56c93a641b
feat: L0 支持Trace
...
1.【需求描述】
L0 支持Trace,提供两种工作模式:在线模式、离线缓存模式, 用于按时间线追踪系统事件,如任务切换、中断、ipc等。
2.【方案描述】
(1).在内核模块预置静态代码桩
(2).触发桩后,收集系统上下文信息
(3).离线模式则写入内存,用户可通过dump导出;
(4).在线模式通过pipeline对接IDE进行可视化解析和展示;
BREAKING CHANGE:
1.新增一系列trace的对外API,位于los_trace.h中.
LOS_TRACE_EASY简易插桩
LOS_TRACE标准插桩
LOS_TraceInit配置Trace缓冲区的地址和大小
LOS_TraceStart开启事件记录
LOS_TraceStop停止事件记录
LOS_TraceRecordDump输出Trace缓冲区数据
LOS_TraceRecordGet获取Trace缓冲区的首地址
LOS_TraceReset清除Trace缓冲区中的事件
LOS_TraceEventMaskSet设置事件掩码,仅记录某些模块的事件
LOS_TraceHwiFilterHookReg注册过滤特定中断号事件的钩子函数
Close #I41Y9Y
Signed-off-by: LiteOS2021 <dinglu@huawei.com>
2021-07-30 09:29:37 +08:00
kenneth
704cca97b1
fix: 修复QUEUE_INFO_S中waitReadTask无法保存大于32的任务编号
...
根据任务最大数创建waitReadTask数组来保存任务编号信息
close #I41N78
Signed-off-by: kenneth <zhushangyuan@huawei.com>
2021-07-28 11:19:39 +08:00
YOUR_NAME
ad8e96a00f
fix: los_swtmr.h不满足自包含要求对los_config.h存在依赖,但未包含los_config.h
...
close: #I40DHM
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I6903d2ece13ab0a4aadbc65f737c5f5a0f0a357a
2021-07-20 14:23:40 +08:00
openharmony_ci
0526c14017
!224 feat: 新增LOSCFG_BASE_CORE_TSK_SWITCH_HOOK 宏定义配置
...
Merge pull request !224 from zhushengle/task
2021-07-19 01:37:43 +00:00
zhushengle
39efd6fb30
feat: 新增LOSCFG_BASE_CORE_TSK_SWITCH_HOOK 宏定义配置
...
优化原任务切换对外函数钩子调用为通过宏定义实现
Close #I40Q9O
Change-Id: Ie5ab75d04e2a63cb992be968d25e876fd91ee591
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-07-15 09:44:03 +08:00
arvinzzz
3c48951857
fix: 清理残留无效的trace代码
...
1. 删除残留无用的trace代码
2. 调整los_error.h中失效的错误类型定义
3. 整理los_config.h中的特性控制宏
close: #I3ZMB4
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I9f03c486b54ae66308f0dac1aa003dd2a5ef5b84
2021-07-13 11:31:32 +08:00
openharmony_ci
eca03e5ed6
!195 feat: L0新增posix接口sem_getvalue
...
Merge pull request !195 from x_xiny/master
2021-06-24 07:15:06 +00:00
x_xiny
8649b14591
feat: m核新增posix接口sem_getvalue
...
【背景】
m核新增posix接口适配
【修改方案】
接口新增sem_getvalue,并在内核适配相应接口
【影响】
无
re #I3WW8S
Signed-off-by: x_xiny <1301913191@qq.com>
Change-Id: I65a4baa242aaedc2fec9b6ed705dbb1ddb6e70c9
Change-Id: Id4c38a5dd4ac4e90f1bd032a39dcb97ce29de5f9
2021-06-24 10:43:44 +08:00
openharmony_ci
d0efdfc20d
!169 feat: L0支持低功耗投票框架
...
Merge pull request !169 from zhushengle/PM
2021-06-22 11:55:22 +00:00
zhushengle
558ce14bec
feat: L0 支持低功耗框架
...
1.【需求描述】
L0 支持低功耗投票框架, 使内核与应用、驱动分离开,通过注册及投票机制控制系统的低功耗模式,
减低系统功耗,提升设备电池寿命。
2.【方案描述】
(1).提供注册机制,使驱动与内核分离
(2).提供投票机制,判断系统运行模式
(3).记录持锁设备,便于回溯
进入:系统运行进入idle任务时判断当前的功耗模式,如果上层应用未对当前功耗模式(deep和shutdown)
持锁,则系统准备进入当前模式,首先所有设备依次进入当前模式,如果有设备进入当前模式失败,则恢复
已进入当前模式的所有设备,并且功耗模式变为normal模式;设备依次进入当前功耗模式后cpu再进入当前
功耗模式。
恢复:功耗模式为deep时,需要恢复逻辑,时系统恢复运行。当有中断出发时,系统会退出低功耗模式,
恢复顺序为:首先cpu先恢复,然后设备依次恢复。
BREAKING CHANGE:
1.原调度中基于tick timer的低功耗扩展和当前的pm模块合并,删除原对外接口LOS_SchedSleepInit,
变为pm模块统一提供的LOS_PmRegistered接口.
2.原来在arch los_timer.h下提供的低功耗模式为枚举LOS_SysSleepEnum,其中OS_SYS_NORMAL_SLEEP
和OS_SYS_DEEP_SLEEP不符合对外定义,统一修改为LOS_SYS_NORMAL_SLEEP和LOS_SYS_DEEP_SLEEP,
并移至los_pm.h中.
3.VOID HalEnterSleep(LOS_SysSleepEnum sleep) 变更为UINT32 HalEnterSleep(VOID).
Close #I3UDNV
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Id5382c42c8055ba7850895a3f575130a73e38a65
2021-06-22 13:15:06 +08:00
openharmony_ci
0f7d2fcf07
!193 fix: 延时队列为NULL时,返回的响应时间为64位最大值,导致无法更新tick timer的响应周期
...
Merge pull request !193 from zhushengle/sched
2021-06-18 10:09:31 +08:00
zhushengle
bcec32e389
fix: 延时队列为NULL时,返回的响应时间为64位最大值,导致无法更新tick timer的响应周期
...
问题描述:
当g_schedResponseTime = OS_SCHED_MAX_RESPONSE_TIME,且nextExpireTime =(UINT64-1时,
表示系统的延时队列已为NULL, 此时tick timer 中应该设置为最大值,但由于判断
g_schedResponseTime - nextExpireTime >= OS_CYCLE_PER_TICK,导致条件不成立,直接返回,
无法将其设置为最大值,导致tick 中断一直频繁响应。
解决方案:
将延时队列为NULL时的返回值以及idle线程的时间片修改为OS_SCHED_MAX_RESPONSE_TIME - OS_CYCLE_PER_TICK,
保证延时队列为NULL,能够正常设置tick响应的最大值。
Close #I3W1LF
Change-Id: I0d09119240ae5a50ddcb0c96fb23cd3d6e70b892
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-06-17 20:23:13 +08:00
li_zan
7259289bd9
fix: 修复littlefs编译fs.c缺少头文件件依赖配置+若干musl库的缺失问题+多分区规格宏配置问题
...
close:#I3VT11
Signed-off-by: li_zan <371442490@qq.com>
2021-06-17 17:03:41 +08:00
rtos-lover
b6664e66f1
fix: fix backtrace check issue
...
fix issue that when memleak check is enabled, backtace is not enabled
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3VTKD
Signed-off-by: rtos-lover <zhushangyuan@hotmail.com>
2021-06-16 17:12:41 +08:00
openharmony_ci
468ce69f27
!180 update: rename LOS_BackTraceInit
...
Merge pull request !180 from kenneth/BackTraceInit
2021-06-16 13:45:04 +08:00
openharmony_ci
48067a0596
!178 littlefs三方源码采用GN编译修改上库+默认Mount路径可配置
...
Merge pull request !178 from li_zan/master
2021-06-16 10:58:13 +08:00
kenneth
a0a32188ff
update: rename LOS_BackTraceInit
...
change function name LOS_BackTraceInit and involve it in los_init.c when macro is not set to 0
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3SYQQ
Signed-off-by: kenneth <459864689@qq.com>
2021-06-16 08:51:00 +08:00
li_zan
bdb614bc2b
fix: littlefs三方源码采用GN编译修改上库
...
close:I3VJ6X
Signed-off-by: li_zan <371442490@qq.com>
2021-06-15 19:56:50 +08:00
JerryH
97a5b6d8dc
Merge branch 'master' of gitee.com:openharmony/kernel_liteos_m into backtrace
2021-06-09 10:41:58 +08:00
kenneth
811d3fae8a
fix: fix typo in comment
...
The word wantted is misspelled and should be changed to wanted. And expected-size is better than wanted size.
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3RW6C
Signed-off-by: kenneth <459864689@qq.com>
2021-06-03 20:39:33 +08:00
openharmony_ci
804f5a809f
!130 fix: fix macro typo
...
Merge pull request !130 from kenneth/STACK_PROTECTION
2021-06-03 15:14:10 +08:00
YOUR_NAME
ca1792aa4b
feat(liteos_m): support backtrace for riscv
...
Support backtrace for riscv when the compilation option(-fno-omit-frame-pointer) is not turned on.
fix #I3RVXY
Change-Id: Ie7d8a223167e5c540367bc96db646b821dae9fd0
2021-05-25 11:10:28 +08:00
rtos-lover
c70b28bf78
fix: fix LOS_TaskNameGet comment
...
fix comment for the function LOS_TaskNameGet
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3QJVY
2021-05-19 14:33:51 +08:00
openharmony_ci
930e92ebe2
!131 fix: fix destroy typo
...
Merge pull request !131 from kenneth/los_event.h
2021-05-19 13:37:20 +08:00
openharmony_ci
456bef2141
!133 fix: fix length typo
...
Merge pull request !133 from kenneth/los_queue.h
2021-05-19 13:35:03 +08:00
kenneth
98d65801de
fix: fix length typo
...
correct length、there、necessary spell
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3QQA8
2021-05-18 11:23:43 +08:00
kenneth
4ba6259e94
fix: fix destroy typo
...
change LOS_ERRNO_EVENT_SHOULD_NOT_DESTORY to LOS_ERRNO_EVENT_SHOULD_NOT_DESTROYED
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3RQXS
2021-05-18 10:53:39 +08:00
kenneth
16003604a9
fix: fix macro typo
...
change LOSCFG_EXC_HRADWARE_STACK_PROTECTION to LOSCFG_EXC_HARDWARE_STACK_PROTECTION
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3NUX6
2021-05-18 10:02:03 +08:00
openharmony_ci
bb84279cc2
!112 fix: fix function name
...
Merge pull request !112 from rtos-lover/los_sched
2021-05-18 09:42:55 +08:00
openharmony_ci
5ef2efb347
!118 支持IAR工具的Cortex-m33 TrustZone
...
Merge pull request !118 from JerryH/master
2021-05-17 21:59:13 +08:00
YOUR_NAME
c70ef201f3
Add Cortex-m33 TrustZone about IAR
...
close #I3MX1F
Change-Id: I449b01ad7ac714412a26bb9f3a6b723a6c74ca3f
2021-05-11 10:45:52 +08:00
openharmony_ci
7a72b0069a
!113 fix: modify event API description
...
Merge pull request !113 from MGY917/master
2021-05-08 13:10:43 +08:00
Guangyao Ma
9481f1d840
fix: modify event API description
...
Change-Id: I62a819f3407fb933e0bb2ff2e97eda6e643acafb
2021-05-08 10:17:11 +08:00
rtos-lover
f7d50d0fbf
fix: fix function name
...
correct function name OsSchedSetIdleTaskSchedParam
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3PXEX
2021-05-08 10:12:52 +08:00
Haryslee
30578a6a68
fix: misspell
...
Change-Id: I29c6df3ea2e1c23529373de74aa634be0c3de114
2021-05-06 11:46:52 +08:00
openharmony_ci
6c83107292
!91 fix LOS_MEMBOX_ALIGNED macro name
...
Merge pull request !91 from rtos-lover/master
2021-04-30 08:36:10 +08:00
openharmony_ci
1f725147f3
!96 fix:Fixed kernel error with header protector and header comment description.
...
Merge pull request !96 from zhushengle/others
2021-04-28 09:09:07 +08:00
zhushengle
3907238b0f
fix:Fixed kernel error with header protector and header comment description.
...
Close #I3O4SF
Change-Id: I544cde728fb8131d199a21be440ae02da2fe21fb
2021-04-26 21:13:55 +08:00
rtos-lover
fced8992cf
fix: fix LOS_MEMBOX_ALIGNED macro name
...
change LOS_MEMBOX_ALLIGNED to fix LOS_MEMBOX_ALIGNED
2021-04-26 09:42:24 +08:00
zhushengle
912bf69866
fix:Fixed comment description for OS_TSK_GET_INDEX error
2021-04-25 17:40:11 +08:00
zhushengle
adaf6cf7c5
fix:Change the interface to LOS_UDelay and change the input parameter to microsecond.
...
Close #I3NT3Y
Change-Id: Iae33e0aff59480342b07bb4fd2e66969a09affb3
2021-04-23 17:33:27 +08:00
zhushengle
9656d852ab
fix:Add LOS_SysDelay declaration.
...
Close #I3NT3Y
Change-Id: I14a1edc3f9aa06cba28ad51a12f21f6fdcf14fd0
2021-04-23 15:38:11 +08:00
zhushengle
afdda22821
fix:Solution of conflict
...
Change-Id: If2565e5942ca019865720d56dd8bda1617044e6d
2021-04-22 14:33:20 +08:00
Caoruihong
14f0d7286a
move noreturn attribute in front
...
Change-Id: I267fa3fcaa068fe9465231a5edac531b1b539eda
2021-04-21 17:19:07 +08:00
zhushengle
793d2139b2
fix:Solution of conflict.
...
Close #I3IK07
Change-Id: I6913691a28c90b54fbda233209d43b981884f10c
2021-04-20 14:56:26 +08:00