- 20 1月, 2022 1 次提交
-
-
由 JerryH 提交于
内核支持信号功能,支持注册、屏蔽、等待及触发等操作。 close #I4R72Q Signed-off-by: NJerryH <huangjieliang@huawei.com> Change-Id: I26fb11a03d1899c6f7e665f0798824c578d592a6
-
- 19 1月, 2022 1 次提交
-
-
由 yinjiaming 提交于
【背景】 当前仓代码存在编译告警需要处理 【修改方案】 在测试用例中屏蔽了-Werror选项 在对应的代码处添加了相应函数的声明头文件 【影响】 对现有的产品编译不会有影响。 re #I4N50W Signed-off-by: Nyinjiaming <yinjiaming@huawei.com> Change-Id: I7dc1e38105aa3d60f9f991f34f88875cccb48463
-
- 18 1月, 2022 1 次提交
-
-
由 JerryH 提交于
支持pipe管道驱动,支持poll多文件描述符检测接口。 Signed-off-by: NJerryH <huangjieliang@huawei.com> Change-Id: Ida1f29709affbc91a26b8518e4a77b8e5469be19
-
- 10 1月, 2022 1 次提交
-
-
由 JerryH 提交于
在需要IAR的thread_local特性时,在targets_config.h中包含los_iar_tls.h,覆盖los_config.h的默认定义,使能该特性。 close #I4PTVZ Signed-off-by: NJerryH <huangjieliang@huawei.com> Change-Id: I92d3f960555f95cb3618dd5e3915824105eb13a4
-
- 31 12月, 2021 1 次提交
-
-
由 zhushengle 提交于
背景: 当前Arch下tick timer的实现依赖于弱函数机制,三方适配时出错及限制较大,且tick timer作为内核必须模块,未模块化,当前散落在tick和调度等模块中,且当前存在arch依赖 内核,内核也依赖arch的情况,为了解决上述问题,将tick timer模块化,通过提供tick timer框架实现内核依赖Arch而Arch不依赖内核,并且可以减少对外暴漏的接口,使得三方 适配时更加明确需要实现的接口。 方案描述: 1.tick timer结构 在kernel_liteos_m/arch/include/los_timer.h,中定义结构: typedef struct { UINT32 freq; INT32 irqNum; UINT32 (*init)(HWI_PROC_FUNC tickHandler); UINT64 (*getCycle)(UINT32 *period); VOID (*reload)(UINT64 time); VOID (*lock)(VOID); VOID (*unlock)(VOID); HWI_PROC_FUNC tickHandler; } ArchTickTimer; 并声明对外获取tick timer的接口: ArchTickTimer *ArchSysTickTimerGet(VOID) define LOS_SysTickTimerGet ArchSysTickTimerGet 2.在每个架构下提供默认的tick timer操作: STATIC ArchTickTimer g_archTickTimer = { .freq = xxx, 必填 .irqNum = xxx, 必填 .init = xxx, 必填 .getCycle = xxx, 必填 .reload = xxx, 必填 .lock = xxx, 必填 .unlock = xxx, 必填 .tickHandler = NULL, 可选 } 并实现:ArchTickTimer *ArchSysTickTimerGet(VOID) 接口 3.内核los_tick.c中提供对外(其它模块)和公共的tick timer初始化操作函数, 如果用户不想启用系统默认的tick timer,则需要在 "内核初始化之前" 调用接口: LOS_TickTimerRegister(const ArchTickTimer *timer, const HWI_PROC_FUNC tickHandler) 将用户自己的tick timer或中断处理函数 注册进去。 用户也可以注册自己的中断处理函数(用户不提供,默认使用系统提供的)。 BREAKING CHANGE: 原来版本中每个架构下提供的tick timer相关操作函数为弱函数: WEAK UINT32 HalTickStart(OS_TICK_HANDLER handler); WEAK VOID HalSysTickReload(UINT64 nextResponseTime); WEAK UINT64 HalGetTickCycle(UINT32 *period); WEAK VOID HalTickLock(VOID); WEAK VOID HalTickUnlock(VOID); 用户如果需要启用自己的tick timer需要自己实现相关接口(强属性),在 "内核初始化之前" 通过调用: LOS_TickTimerRegister 接口替换系统默认提供的tick timer相关接口。 无论用户提供的tick timer 还是系统默认提供的,均在内核初始化时启动。 Close #I4N7XV:arch 重构 Signed-off-by: Nzhushengle <zhushengle@huawei.com> Change-Id: I83ad0bdf303904f0e73f808b57b60183619fddcd
-
- 28 12月, 2021 1 次提交
-
-
由 kenneth 提交于
根据板端实际设置中断向量表对齐大小,支持可配置。 fix #I4M20E Signed-off-by: Nkenneth <zhushangyuan@huawei.com>
-
- 25 12月, 2021 1 次提交
-
-
由 LiteOS2021 提交于
命名规范:修改少量Arch接口,命名规范化调整: 1.修改arch/include下接口声明,所有arch对外提供调用函数均以ArchXX命名 2.提取多个架构均有实现的公共函数声明至arch/include对应头文件中以供外部调用,并修改命名格式为ArchXX 3.修改OS_HWI_WITH_ARG为LOSCFG_PLATFORM_HWI_WITH_ARG并移至los_config.h中 4.typedef VOID (*OS_TICK_HANDLER)(VOID);暂时移至arch/include/los_timer.h中 5.实现atomic原子操作相关接口,位于arch/include/los_atomic.h,arm架构部分与汇编指令相关原子操作接口使用ARCH_ARM宏进行控制是否编译 BREAKING CHANGE: 1.修改arch/include下接口,以ArchXX命名函数 2.提取公共函数声明:ArchAtomicXchg32bits、ArchAtomicDecRet、ArchAtomicCmpXchg32bits 3.新增部分原子操作c内联实现 Close #I4N7XV Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
-
- 05 11月, 2021 1 次提交
-
-
由 Caoruihong 提交于
Kconfig usages are the same with liteos_a Signed-off-by: NCaoruihong <crh.cao@huawei.com> Change-Id: I9aacbb69da88d5427cced89d1a49cb1041afa998
-
- 28 9月, 2021 2 次提交
-
-
由 zhushengle 提交于
1.修复risc-v backtrace无法输出的问题 异常时未将fp传入,且backtrace校验不足,容易导致再次异常 2.优化task 输出信息格式 3.shell中task命令代码重复 4.OSBackTraceInit 拼写有误 Close #I4BPHX:riscv32_virt 异常时无法输出backtrace信息 Signed-off-by: Nzhushengle <zhushengle@huawei.com> Change-Id: I141d5e7808fc967d846f425422f5dcf2ac01d1d1
-
由 kenneth 提交于
当开启LOSCFG_EXC_HARDWARE_STACK_PROTECTION宏时,增加定义OS_TASK_STACK_PROTECT_SIZE宏 close #I4C5RW Signed-off-by: Nkenneth <zhushangyuan@huawei.com>
-
- 24 9月, 2021 1 次提交
-
-
由 Haryslee 提交于
arm9架构支持栈回溯功能 close #I4BMLG Signed-off-by: NHaryslee <lihao189@huawei.com> Change-Id: Iba30a6853391c4cad3ed59ddfc05ef2530a4de89
-
- 07 9月, 2021 1 次提交
-
-
由 lanche1024 提交于
Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
-
- 28 8月, 2021 1 次提交
-
-
由 lnlan 提交于
【背景】 m核需补充shell命令,按任务统计已经alloc的内存大小 【修改方案】 1.新增在task命令中,在打印task info前遍历所有内存节点,统计各任务所占用的内存节 点大小,在打印时将其打出。 2.内存节点中,taskid所占位数随系统最大任务数调整 【影响】 对现有的产品编译不会有影响。 re #I44WNU Signed-off-by: Nlanleinan <lanleinan@163.com> Change-Id: I080b5dd056966784c0752408f9e320ca0e97c7f7
-
- 26 8月, 2021 1 次提交
-
-
由 lnlan 提交于
【背景】 m核qemu需完善串口驱动,支持shell输入 【修改方案】 1.完善串口驱动 2.添加shell任务,获取串口输入并下发处理 【影响】 对现有的产品编译不会有影响。 re #I46N7F Signed-off-by: Nlanleinan <lanleinan@163.com> Change-Id: Ib58d4e633081743e64412cb65aa209d3356d6c1c
-
- 17 8月, 2021 1 次提交
-
-
由 kenneth 提交于
The multiple non-continuous memory regions are supported when the macro LOSCFG_MEM_MUL_REGIONS is enabled. The array of the type LOS_MEM_REGION should be defined, and each array element defines the start address and the length for each memory regions, \ begining from the lower address to the higher memory address. close #I43XOP Signed-off-by: Nkenneth <zhushangyuan@huawei.com>
-
- 10 8月, 2021 1 次提交
-
-
由 JerryH 提交于
close #I3WE0S Signed-off-by: NJerryH <huangjieliang@huawei.com> Change-Id: Id193fd555877ac0c6b5b43e5dd5ede32531b86c4
-
- 09 8月, 2021 1 次提交
-
-
由 zhushengle 提交于
方案描述: 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: Nzhushengle <zhushengle@huawei.com> Change-Id: Ia53e4accce497bce870557c2c3387ce51fa3fed3
-
- 30 7月, 2021 1 次提交
-
-
由 LiteOS2021 提交于
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: NLiteOS2021 <dinglu@huawei.com>
-
- 15 7月, 2021 1 次提交
-
-
由 zhushengle 提交于
优化原任务切换对外函数钩子调用为通过宏定义实现 Close #I40Q9O Change-Id: Ie5ab75d04e2a63cb992be968d25e876fd91ee591 Signed-off-by: Nzhushengle <zhushengle@huawei.com>
-
- 13 7月, 2021 1 次提交
-
-
由 arvinzzz 提交于
1. 删除残留无用的trace代码 2. 调整los_error.h中失效的错误类型定义 3. 整理los_config.h中的特性控制宏 close: #I3ZMB4 Signed-off-by: Narvinzzz <zhaotianyu9@huawei.com> Change-Id: I9f03c486b54ae66308f0dac1aa003dd2a5ef5b84
-
- 22 6月, 2021 1 次提交
-
-
由 zhushengle 提交于
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: Nzhushengle <zhushengle@huawei.com> Change-Id: Id5382c42c8055ba7850895a3f575130a73e38a65
-
- 17 6月, 2021 1 次提交
-
-
由 li_zan 提交于
close:#I3VT11 Signed-off-by: Nli_zan <371442490@qq.com>
-
- 16 6月, 2021 2 次提交
-
-
由 rtos-lover 提交于
fix issue that when memleak check is enabled, backtace is not enabled close https://gitee.com/openharmony/kernel_liteos_m/issues/I3VTKDSigned-off-by: Nrtos-lover <zhushangyuan@hotmail.com>
-
由 zhushy_ 提交于
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/I3SYQQSigned-off-by: kenneth <459864689@qq.com>
-
- 15 6月, 2021 1 次提交
-
-
由 li_zan 提交于
close:I3VJ6X Signed-off-by: Nli_zan <371442490@qq.com>
-
- 25 5月, 2021 1 次提交
-
-
由 YOUR_NAME 提交于
Support backtrace for riscv when the compilation option(-fno-omit-frame-pointer) is not turned on. fix #I3RVXY Change-Id: Ie7d8a223167e5c540367bc96db646b821dae9fd0
-
- 18 5月, 2021 1 次提交
-
-
由 zhushy_ 提交于
change LOSCFG_EXC_HRADWARE_STACK_PROTECTION to LOSCFG_EXC_HARDWARE_STACK_PROTECTION close https://gitee.com/openharmony/kernel_liteos_m/issues/I3NUX6
-
- 11 5月, 2021 1 次提交
-
-
由 YOUR_NAME 提交于
close #I3MX1F Change-Id: I449b01ad7ac714412a26bb9f3a6b723a6c74ca3f
-
- 19 4月, 2021 1 次提交
-
-
由 Caoruihong 提交于
Change-Id: Ie25b83a42d3ca35c3a6d624ef01f425a85957d7f
-
- 13 4月, 2021 1 次提交
-
-
由 星e雨 提交于
Description:liteos_m scheduling optimization and low power design. Sig:kernel Feature or Bugfix:Feature Binary Source:No Change-Id: If913b673c9b69039b51ca416be0a77ebccf2773b
-
- 09 4月, 2021 1 次提交
-
-
由 arvinzzz 提交于
Description: Fix some macro definitions of limits.h. Feature or Bugfix: Bugfix Binary Source:NA Change-Id: I419c712f8605f8a0d2d6cb0b6c3831cea0e742e1
-
- 01 4月, 2021 1 次提交
-
-
由 arvinzzz 提交于
Change-Id: I45c37c3c92e74e676818e713fa46b3a9fe970e68
-
- 11 3月, 2021 1 次提交
-
-
由 mamingshuai 提交于
-
- 30 1月, 2021 1 次提交
-
-
由 huangjieliang 提交于
Reviewed-by: likailong
-
- 11 1月, 2021 1 次提交
-
-
由 likailong 提交于
Reviewed-by: shenwei
-
- 08 1月, 2021 1 次提交
-
-
由 likailong 提交于
Reviewed-by: shenwei
-
- 16 12月, 2020 1 次提交
-
-
由 Caoruihong 提交于
Reviewed-by: likailong
-
- 02 12月, 2020 1 次提交
-
-
由 likailong 提交于
Reviewed-by: wangmihu, zhushengle
-
- 13 11月, 2020 1 次提交
-
-
由 l00278955 提交于
Reviewed-by: liulei, shenwei Change-Id: I7baba352c02b78aefc81fc5eca000d840d3b2fe3
-
- 08 9月, 2020 1 次提交
-
-
由 wenjun 提交于
-