Commit Graph

373 Commits

Author SHA1 Message Date
openharmony_ci d1d412255c
!570 fix:shell 命令 ctrl +c 打印使用多余的参数
Merge pull request !570 from 拓维信息候鹏飞/master
2022-02-10 12:16:07 +00:00
openharmony_ci b534083056
!569 shell命令行输入增加回退支持
Merge pull request !569 from 方烨/master
2022-02-10 11:56:34 +00:00
likailong 05642f05ae feat: 支持select.h的FD_SETSIZE宏配置
1. FD_SETSIZE由普通文件+网络文件的文件句柄个数之和决定。
2. 以前vfs_config.h引入fatfs.h和lfs_api.h又会引入其他头文件,
导致变异问题。因此需要将配置宏拆分出来放到fatfs_conf.h和
lfs_conf.h 头文件中。
3. lwipopts.h会提供网络的句柄个数,依赖FD_SETSIZE,而select.h会提供FD_SETSIZE,
依赖网络句柄个数,因此会形成相互依赖的情况,需要通过顺序来解决。
4. 网络中新增ntohl的定义。

close: #I4RYK4

Signed-off-by: likailong <likailong@huawei.com>
2022-01-24 17:24:26 +08:00
houpengfei 8b586fb2bf 删除不必要的参数
Signed-off-by: houpengfei <houpengfei@talkweb.com.cn>
2022-01-24 09:07:36 +08:00
fangye d986648e9c shell命令行增加回退支持
Signed-off-by: fangye <fangye@talkweb.com.cn>
2022-01-23 21:11:43 +08:00
openharmony_ci fede33b32a
!568 liteos-m kernel 部件标准化
Merge pull request !568 from Hongjin Li/lihongjin/br_dev
2022-01-22 03:45:24 +00:00
JerryH 017adac7a4 feature: Newlib support signal.
修改signal适配支持Newlic

close #I4RD3H

Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: I59f59856a275f5a4f802a1ea7d08e9405a2fb6aa
2022-01-20 18:50:17 +08:00
JerryH 8d7468b44c feature: Support kernel signal and POSIX API.
内核支持信号功能,支持注册、屏蔽、等待及触发等操作。

close #I4R72Q

Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: I26fb11a03d1899c6f7e665f0798824c578d592a6
2022-01-20 11:17:40 +08:00
Hongjin Li 9314b2fe81 chore: liteos-m kernel 部件标准化
1、添加liteos-m kernel的部件描述文件bundle.json
2、依赖三方开源软件的编译脚本修改,取消直接include头文件,改为引用三方开源软件提供的公共配置。

Signed-off-by: Hongjin Li <lihongjin1@huawei.com>
Change-Id: I345c105a75c5cd87144c821fae123abf1f53e9f7
2022-01-19 17:44:49 +08:00
yinjiaming 194ac5898d fix: 当前仓代码编译告警的问题
【背景】
当前仓代码存在编译告警需要处理

【修改方案】
在测试用例中屏蔽了-Werror选项
在对应的代码处添加了相应函数的声明头文件

【影响】
对现有的产品编译不会有影响。

re #I4N50W

Signed-off-by: yinjiaming <yinjiaming@huawei.com>
Change-Id: I7dc1e38105aa3d60f9f991f34f88875cccb48463
2022-01-19 02:27:14 +00:00
openharmony_ci c2d3518c42
!538 支持pipe管道通信机制以及poll多文件描述符检测接口
Merge pull request !538 from JerryH/pipe
2022-01-18 10:29:15 +00:00
JerryH 4890222e7c feature: Support pipe and poll interfaces.
支持pipe管道驱动,支持poll多文件描述符检测接口。

Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: Ida1f29709affbc91a26b8518e4a77b8e5469be19
2022-01-18 16:47:35 +08:00
openharmony_ci 4a9d1f0c51
!531 fix: 修复liteos-m在iar环境下的编译问题
Merge pull request !531 from zhushengle/iar
2022-01-11 10:46:48 +00:00
zhushengle 4c4784e33d fix: 修复liteos-m在iar环境下的编译问题
1.数据类型转换
2.使用未初始化数据
3.无用的标签
4.pthread 线程退出后name指向野指针

Close #I4Q5Q5
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ib89390d8f61a355788da77651bf9aeee816561bb
2022-01-11 18:01:01 +08:00
JerryH b98aa4eacd feature: 支持IAR C++ thread_local特性
在需要IAR的thread_local特性时,在targets_config.h中包含los_iar_tls.h,覆盖los_config.h的默认定义,使能该特性。

close #I4PTVZ

Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: I92d3f960555f95cb3618dd5e3915824105eb13a4
2022-01-10 20:10:35 +08:00
openharmony_ci 67f8149640 !480 feat: 内核提供tick timer框架,支持多架构多平台通用化
Merge pull request !480 from zhushengle/timer
2022-01-04 01:12:29 +00:00
zhushengle 96663805ec fix: pm codex告警清零
Close #I4OWPE
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I07f6db919062090b917ce991198f769032365472
2021-12-31 14:55:20 +08:00
zhushengle f635450d7c feat: 内核提供tick timer框架,支持多架构多平台通用化
背景:
      当前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: zhushengle <zhushengle@huawei.com>
Change-Id: I83ad0bdf303904f0e73f808b57b60183619fddcd
2021-12-31 10:50:33 +08:00
zhangyang c7843926b8 refactor: 解决m核开启ipv6功能的编译
close #I4NOIP

Signed-off-by: zhangyang <zhangyang349@huawei.com>
2021-12-27 12:00:30 +08:00
LiteOS2021 04bf3a682f feat: synchronizing arch api
命名规范:修改少量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: LiteOS2021 <dinglu@huawei.com>
2021-12-25 18:36:09 +08:00
openharmony_ci 7e9d84362f !442 M核posix接口fs模块用例完善
Merge pull request !442 from wangchen/posix_test
2021-12-19 08:12:27 +00:00
kenneth ab886d848a feat: 低内存资源回收low memory killer
低内存资源回收特性,支持维护可杀低重要任务,当高内存任务申请不到足够内存时,临时释放低重要性的任务来释放内存来满足高内存任务正常运行;
当高内存任务退出运行时,自动恢复被杀的低重要性任务。设计文档归档位置 https://gitee.com/rtos_yuan/lmk/tree/design/

BREAKING CHANGE: 增加低内存资源回收注册相关接口LOS_LmkOpsNodeRegister、LOS_LmkOpsNodeUnregister和内存资源释放和任务恢复接口LOS_LmkTasksKill和LOS_LmkTasksRestore.

close #I4ID0M

Signed-off-by: kenneth <zhushangyuan@huawei.com>
2021-12-13 12:07:33 +08:00
openharmony_ci ff11e86c42 !452 解除net对cmsis的依赖,net属于内核模块,不应该依赖内核对外接口
Merge pull request !452 from SimonLi/master
2021-12-10 06:46:40 +00:00
SimonLi 99826240d9 fix: 解除net对cmsis的依赖,net属于内核模块,不应该依赖内核对外接口
Signed-off-by: SimonLi <likailong@huawei.com>
2021-12-10 10:22:17 +08:00
yangjian 82c6d5f174 fix: FD_SETSIZE compatible newlibc
Signed-off-by: yangjian <jianyang@bestechnic.com>
Change-Id: I9d6b708772e63b2dc797d7305801be617fb32e75
2021-12-09 21:53:56 +08:00
arvinzzz b2bcab3a5b fix: Kconfig中打开littlefs选项默认关联打开LOSCFG_SUPPORT_LITTLEFS宏
close: #I4ENQ1

Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: Ib86ba0e35860e225e57c8da9f481de55ba154a40
2021-12-06 18:14:56 +08:00
lnlan ee380fb9be fix: M核posix接口fs模块用例完善
【背景】M核posix接口fs模块用例无平台进行验证,在qemu上运行时会有报错。

【修改方案】
1,对部分用例进行修改,增加对qeum的适配度

【影响】
对现有的产品编译不会有影响。

re #I4L7BF
Signed-off-by: wangchen <253227059@qq.com>
2021-12-06 09:31:15 +00:00
openharmony_ci cd31fc9a8b !368 【feature】内核支持musl与newlib C库切换
Merge pull request !368 from Zhaotianyu/1020newlib
2021-12-04 14:19:55 +00:00
arvinzzz 753d86014b feature: 支持newlib与musl切换
系统支持newlib,并且可以与musl-C自由切换

1. 新增newlib支持,适配newlib的预留钩子,针对系统能力适配newlib头文件(补充宏定义,结构体定义,posix能力开关),
  采用标准C与自研posix接口声明与结构体定义混合作为C库
2. 梳理kal的依赖关系,kal作为内核对外提供的标准接口,下属包含cmsis、libc、posix。
  cmsis为内核对cmsis接口的支持,libc为内核对三方C库的适配及使用,posix为内核自研提供的posix标准接口。
  若采用musl-C,则kal中选取libc/musl,posix共同作为C库对外支持;
  若采用newlib-C,则kal中选取libc/newlib,部分posix共同作为C库对外支持。
3. fs整理,components/fs下提供基于posix标准的接口改为内部对外接口,供musl以及newlib切换 适配使用

close: #I4ENQ1

Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I72eda5ac5499f72c67e800e22b0f39eb288f2b94
2021-12-04 21:43:55 +08:00
openharmony_ci d3bf180b7f !428 对arch.c文件里面的方法进行防空处理
Merge pull request !428 from xieshen9527/master
2021-12-02 02:19:31 +00:00
openharmony_ci d0692abae9 !435 fix: 取消cpu进入低功耗前开中断操作,优化注册机制
Merge pull request !435 from zhushengle/pm
2021-11-30 09:51:35 +00:00
zhushengle bd39e9e6d6 fix: 取消cpu进入低功耗前开中断操作
开中断导致低功耗流程非原子,容易造成流程出错。
    提供低功耗默认处理函数,优化注册机制

Close #I4KDP8
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ied8bab691e7725e207b8b3cfb058f851eafe3052
2021-11-30 10:47:04 +08:00
openharmony_ci d0d51b4a29 !393 feat: 支持Lms轻量级地址消毒
Merge pull request !393 from LiteOS/lms
2021-11-29 14:22:21 +00:00
zhushengle 91903a3716 fix: 修正部分编码风格问题
Close #I4K8M7

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: If34d5c632cbb06f639434d8c35fb226a0253f4a7
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-11-29 14:22:39 +08:00
LiteOS2021 7b838e8a7b feat: 支持Lms
1.【需求描述】:
   支持内核态堆内存非法访问检测,包括:越界访问、double free、释放后使用;支持libc常用高频函数内存检测;支持安全函数内存检测;读写检测可配可裁剪。
2.【方案描述】:
   (1).影子内存映射与标记
   (2).编译器使能-fsanitize=kernel-address 自动插桩检测点
   (3).实时校验影子内存的合法性;
   (4).错误访问打印回溯栈

BREAKING CHANGE: 新增支持API:

LOS_LmsCheckPoolAdd使能检测指定内存池
LOS_LmsCheckPoolDel不检测指定内存池
LOS_LmsAddrProtect为指定内存段上锁,不允许访问
LOS_LmsAddrDisableProtect去能指定内存段的访问保护

Close #I4HYBG

Signed-off-by: LiteOS2021 <dinglu@huawei.com>
Change-Id: Ia356a003088b9df37df667ea8ba91c80f5a41967
2021-11-27 11:31:12 +08:00
openharmony_ci 2ad9dc0eac !426 feat: 调度、任务及pm解耦
Merge pull request !426 from zhushengle/pm
2021-11-27 02:08:29 +00:00
zhangyang 690b8f3627 refactor: 对arch.c文件中方法里面参数进行防空处理
close #I4JV90

Signed-off-by: zhangyang <zhangyang349@huawei.com>
2021-11-26 11:11:10 +08:00
zhushengle cc8a794229 feat: 调度、任务及pm解耦
pm中冻结线程的操作,融合至OsSchedSuspend和OsSchedResume,
使得调度模块提供对应完整的方法给任务模块,做到之间的相互解耦,
方便其它调度算法的融入。

Close #I4JTN6
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ifde7077166a2fe67e7246fa68f777844640d67db
2021-11-25 16:54:02 +08:00
openharmony_ci 57a8e03e89 !407 fix issues I4J4TK cat can not work well on big file
Merge pull request !407 from 冷钦街/cat_big2
2021-11-24 05:56:08 +00:00
openharmony_ci a1e97964c6 !415 fix(shell):cp命令执行时 通配出多个源文件时错误提示不正确
Merge pull request !415 from 冷钦街/cp_hit
2021-11-24 05:55:43 +00:00
openharmony_ci 36712dcbb6 !421 修改lwip_porting.gni路径为全量路径,方便产品适配
Merge pull request !421 from 刘建东/master
2021-11-24 05:54:18 +00:00
openharmony_ci ed02106eef !416 【轻量级 PR】:修复一处资源泄漏
Merge pull request !416 from Caoruihong/N/A
2021-11-24 05:53:25 +00:00
YOUR_NAME 321cb9d193 refactor: use all path of lwip_porting.gni for other product
use all path of lwip_porting.gni for other product

close: #I4JKX9

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-11-24 11:53:41 +08:00
openharmony_ci 8310aba4ea !410 宏_BSD_SOURCE放在头文件中定义,其他模块使用lwip头文件时,可不用单独再定义
Merge pull request !410 from 刘建东/master
2021-11-24 01:41:39 +00:00
openharmony_ci ed64fb1b2f !409 littlefs新增FileOps->Fstat接口
Merge pull request !409 from Hongjin Li/liteos_m_add_fstats_to_littlefs
2021-11-24 01:38:39 +00:00
Caoruihong b73898a022 修复一处资源泄漏
Signed-off-by: Caoruihong <crh.cao@huawei.com>
2021-11-23 07:15:06 +00:00
lengqinjie 8675abcec9 fix(shell):cp命令执行时 通配出多个源文件时错误提示不正确
close #I4JETR
Signed-off-by: lengqinjie <15390014138@163.com>
2021-11-23 14:09:12 +08:00
YOUR_NAME 57208d6e14 refactor: define _BSD_SOURCE in cc.h instead of gn file
define _BSD_SOURCE in cc.h instead of gn file

close: #I4J8OT

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-11-22 15:27:00 +08:00
Hongjin Li 36b7577c5e liteos_m文件系统中,components/fs/littlefs/lfs_api.c中新增注册.Fstat = LfsFstat接口。
Change-Id: Ic56364d1df71b369abfa5be617fc63b77a65b27b
Signed-off-by: Hongjin Li <lihongjin1@huawei.com>
2021-11-22 11:45:52 +08:00
lengqinjie 078bd0c4b1 refactor(shell):减少命令行参数的解析次数到1次(原来为2次)
通过调整获取命令类型的代码位置,达到减少解析次数的目的
经过分析,本修订无明确的副作用。

Signed-off-by: lengqinjie <15390014138@163.com>
2021-11-22 09:32:17 +08:00
lengqinjie d518bad0dc fix(shell): cat针对大文件无法工作
close #I4J4TK

Signed-off-by: lengqinjie <15390014138@163.com>
2021-11-22 09:07:58 +08:00
openharmony_ci dd90483e39 !394 m核ioctl增加选项支持
Merge pull request !394 from 刘建东/master
2021-11-18 06:28:09 +00:00
openharmony_ci afc362db23 !390 清理"bits/xxx.h"类头文件包含
Merge pull request !390 from Caoruihong/clean_bits
2021-11-15 09:35:10 +00:00
YOUR_NAME 5e8ac4b888 feat: add option for ioctl
add option for ioctl

close: #I4I3W5

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-11-15 14:34:58 +08:00
openharmony_ci 942c614995 !371 支持Kconfig配置
Merge pull request !371 from Caoruihong/kconfig
2021-11-11 06:04:28 +00:00
Caoruihong 931df01e2e chore: clean "bits/xx.h" includes
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Ia4db457ec704121aa5f0daac17ecee6da8395d63
2021-11-11 11:57:07 +08:00
openharmony_ci 1553e3ed88 !386 chore: shell体验优化
Merge pull request !386 from huangshan/chore
2021-11-10 08:49:51 +00:00
huangshan 57cff794ae chore: shell完善帮助信息,特殊处理不可见字符
Signed-off-by: huangshan <huangshan9@huawei.com>
Change-Id: I3cbc559c388b5d5a524783c1f55c1e569a44465c
2021-11-09 20:42:18 +08:00
YOUR_NAME d044eda3c3 feat: provide read write for socket by #define
provide read write for socket by #define

close: #I4H8TL

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-11-08 11:20:01 +08:00
Caoruihong 7e673430dc feat(build): support Kconfig
Kconfig usages are the same with liteos_a

Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I9aacbb69da88d5427cced89d1a49cb1041afa998
2021-11-05 12:18:04 +08:00
openharmony_ci f3631fa266 !357 修复 shell 模块存在大量的编译告警及 codeCheck
Merge pull request !357 from pef/codecheck-1018
2021-11-02 13:30:50 +00:00
openharmony_ci 5568d3ac89 !359 fix:修复shcmd.h需要用宏包起来的问题
Merge pull request !359 from yinjiaming/2021-10-18
2021-11-02 02:34:35 +00:00
YOUR_NAME b30e9139d5 fix: switch inet_addr to a function
switch inet_addr to a function

close: #I4G4I4

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-10-30 14:46:29 +08:00
YOUR_NAME b2e3849bfb fix: optimize default configuration
optimize default configuration

close: #I4FSC9

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-10-28 17:40:59 +08:00
openharmony_ci aed479813d !360 m核ioctl支持SIOCGIFBRDADDR选项
Merge pull request !360 from 刘建东/master
2021-10-21 01:51:11 +00:00
pef e0d8b5328f fix: 修复shell 模块存在大量的编译告警及codeCheck。
【背景】
代码中存在规范问题和编译告警。
如:error: unused variable 'taskID2' [-Werror=unused-variable]
应该去掉不用的变量。

【修改方案】
1. 修改变量类型宏的使用。
2. 根据告警信息修复问题代码。

【影响】
 对现有的产品编译不会有影响。

re #I48V2J

Change-Id: I7f364fcf974d2a439639f35ba428e04f7de7338a
Signed-off-by: pef <cyd1997@126.com>
2021-10-20 07:50:23 +00:00
Far 269b330989 fix:修复文件系统vfs层未正确判空g_fs的问题
Close #I4ELJN

Signed-off-by: Far <yesiyuan2@huawei.com>
2021-10-20 11:14:51 +08:00
YOUR_NAME 33ee492953 feat: add option SIOCGIFBRDADDR for ioctl
add option SIOCGIFBRDADDR for ioctl

close: #I4EGNG

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-10-19 17:10:09 +08:00
openharmony_ci d8a6a4bdb9 !347 去掉没有使用的入参consoleid。
Merge pull request !347 from pef/tocommit2
2021-10-19 01:53:57 +00:00
openharmony_ci 4bc6a14914 !346 【fix】api_shell.c 宏修改
Merge pull request !346 from pef/tocommit
2021-10-19 01:52:10 +00:00
yinjiaming a7a8a62bcb fix: 修复shcmd.h需要用宏包起来的问题
【背景】
api_shell.c中使用了头文件shcmd.h,没有用宏包起来
[ERR] :#include<shcmd.h>:45

【修改方案】
删去包含的头文件shcmd.h,代码中没有用到该头文件中的内容
为能够顺利编译过,添加了头文件<sys/time.h>

【影响】
对现有的产品编译不会有影响。

re #I45FU2

Change-Id: I1727515883adcca1e9aaa25fc46ef1fee11fa1a9
Signed-off-by: yinjiaming <yinjiaming@huawei.com>
2021-10-18 09:23:23 +00:00
openharmony_ci 80263488e9 !345 【fix】los_trace.h注释修正
Merge pull request !345 from Zhaotianyu/1012trace_fix
2021-10-15 07:42:20 +00:00
LiteOS2021 afbc9a593b fix: 优化trace buffer初始化,删除swtmr 桩中的无效参数
close #I4DPR7

Signed-off-by: LiteOS2021 <dinglu@huawei.com>
2021-10-14 09:48:49 +08:00
pef a62795304d fix: 去掉没有使用的入参consoleid。
【背景】
https://gitee.com/openharmony/kernel_liteos_m/blob/master/components/shell/src/base/show.c
L49 consoleid 函数中没有使用,应该改为VOID。

【修改方案】
1. 将consoleid改为VOID。

【影响】
对现有的产品编译不会有影响。

re #I43CVE

Change-Id: Ieac29d16ec06c4fa45652c7106b63f6dd8397ebf
Signed-off-by: pef <cyd1997@126.com>
2021-10-13 08:09:17 +00:00
pef 9819eb5676 fix: 将未定义小写"true","false"改为"TRUE","FALSE"。
【背景】
    api_shell.c文件使用小写的true和false 却没有定义
    [OHOS ERROR] ../../../kernel/liteos_m/components/net/lwip-2.1/porting/src/api_shell.c:342:25: error: 'false' undeclared (first use in this function)
    [OHOS ERROR]      BOOL timeout_flag = false;
    编译报错。
    【修改方案】
    1. 将未定义的 true,false改为已定义的宏TRUE,FALSE。

    【影响】
    对现有的产品编译不会有影响。

    re #I43D20

Change-Id: If66adab35f2315d0caca2a487960be887567126b
Signed-off-by: pef <cyd1997@126.com>
2021-10-12 10:59:18 +00:00
arvinzzz 693468e527 fix: los_trace.h接口注释错误修正
1. LOS_TraceStop接口的功能描述应该是stop

close: #I4CYPZ

Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I09da24e9a57abde288ccd3f558ba9e65ca1092e3
2021-10-12 10:35:14 +08:00
kenneth 0c72c8bf94 fix: 解决los_pm.c:743:19: warning 编译告警
修复PRINT_ERR函数格式化参数数目不一致。

close #I4D4L8

Signed-off-by: kenneth <zhushangyuan@huawei.com>
2021-10-09 15:56:27 +08:00
zhushengle 0fb49d4422 fix: 修复risc-v异常时,异常信息混乱且backtrace无法输出的问题
1.修复risc-v backtrace无法输出的问题
异常时未将fp传入,且backtrace校验不足,容易导致再次异常
2.优化task 输出信息格式
3.shell中task命令代码重复
4.OSBackTraceInit 拼写有误

Close #I4BPHX:riscv32_virt 异常时无法输出backtrace信息

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I141d5e7808fc967d846f425422f5dcf2ac01d1d1
2021-09-28 11:39:42 +08:00
openharmony_ci 3c6f422162 !318 去除backtrace冗余代码
Merge pull request !318 from LiteOS/master
2021-09-26 12:03:00 +00:00
Caoruihong 4aba2c06b5 chore: fix dailycheck issues
master --> HEAD
remove useless @since

Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Id3452cccdcc823c374f873cf4905015351580d15
2021-09-26 17:13:13 +08:00
LiteOS2021 db1f9c797c 去除backtrace冗余代码
Signed-off-by: LiteOS2021 <dinglu@huawei.com>
2021-09-26 15:41:26 +08:00
Haryslee 03de7f3745 feat: backtrace for arm9
arm9架构支持栈回溯功能

close #I4BMLG

Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: Iba30a6853391c4cad3ed59ddfc05ef2530a4de89
2021-09-24 16:56:58 +08:00
openharmony_ci 8be34cb78e !293 三方库FatFs升级至r0.14a版本
Merge pull request !293 from Far/fatfs_update
2021-09-24 00:53:41 +00:00
openharmony_ci 4061deaae8 !311 feat: 支持posix 和 cmsis join能力
Merge pull request !311 from zhushengle/join
2021-09-24 00:30:44 +00:00
zhushengle ecfdf7ff9b feat: 支持posix 和 cmsis join能力
支持API:
  LOS_TaskJoin
  LOS_TaskDeatch
  pthread_join
  pthread_deatch
  osThreadJoin
  osThreadDetach
Close #I44V26

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ib61e69c280eef2e4b3b79d9bba7bbd5a300c7fe4
2021-09-23 18:54:14 +08:00
Far 92ea355756 feat: 适配三方库FatFs升级至r0.14a版本
适配了f_mkfs接口的修改

Signed-off-by: Far <yesiyuan2@huawei.com>
2021-09-22 15:02:40 +08:00
openharmony_ci 25441ec1b5 !314 fix: risc-v 低功耗下存在功能问题
Merge pull request !314 from zhushengle/list
2021-09-18 06:14:40 +00:00
zhushengle 9f185b5b52 fix: pm模块解冻线程时存在删除空链表且时间片频繁唤醒系统
1.如果冻结线程状态为delay,则此时pendlist为NULL,解冻时不需要delete
2.低功耗时关闭时间片,减少时间片频繁唤醒系统
3.risc-v 中64位相加存在溢出
Close #I4AKUS

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Icb9e8f7df8488635f9660d3932b06fa6f57e6133
2021-09-18 11:42:08 +08:00
wangchen 6ffd55dcd0 fix: shell模块task命令踩内存问题修改
【背景】task命令获取内存时传入的参数过大,可能引起踩内存问题。

【修改方案】
1,对task命令中获取内存信息时的入参进行调整,避免引起内存问题

【影响】
对现有的产品编译不会有影响。

re #I4A70V
Signed-off-by: wangchen <253227059@qq.com>
2021-09-16 15:56:38 +08:00
zhushengle 9b5739ab11 feat: 低功耗支持冻结线程等需求
1.支持低功耗时冻结线程
2.支持延时锁
3.低功耗与idle分离
4.支持对接电源管组件的低功耗接口
LOS_PmReadLock --- 常阻塞,低功耗线程阻塞于该接口,当系统无任何模块持锁时会唤醒低功耗线程, 触发低功耗流程
LOS_PmSuspend --- 进入低功耗流程
Close #I49FJF

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I009255cfa1852b109dd8bfaf9c779e976660d621
2021-09-14 19:55:26 +08:00
openharmony_ci c77c178ec1 !301 fix: 修复pm编译告警导致内核编译失败
Merge pull request !301 from zhushengle/error
2021-09-11 07:51:37 +00:00
zhushengle 18b052458e fix: 修复pm编译告警导致内核编译失败
Close #I49MIN
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I6b448790b170bf5980d16698ecfff27bda6c3600
2021-09-11 15:27:21 +08:00
openharmony_ci eebd5f16d3 !300 修复不能开启硬浮点选项的问题
Merge pull request !300 from Zhaotianyu/0910fix_fpu_hard
2021-09-10 23:07:44 +00:00
arvinzzz 988fd85fae fix: 支持硬浮点编译
1. 通过本工程的gn编译时,需要在device目录下,单板的关于内核的config.gn中指定-mfloat-abi的等级,并在单板相关代码的编译选项中保持-mfloat-abi一致
2. 通过本工程的Makefile编译时,需要在kernel/liteos_m/targets/下添加单板相关的代码配置,在Makefile中设置-mfloat-abi即可
3. 通过IDE编译本工程时,需要在IDE的汇编文件相关编译选项中加入 -imacros $(LITEOSTOPDIR)/kernel/include/los_config.h,保证浮点等级在汇编文件中生效

close: #I48KJP
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: Ibf9b750b922be2530de349981d55e40b5919933f
2021-09-10 17:30:46 +08:00
openharmony_ci 3c0d17fc63 !281 fix: 优化低功耗流程
Merge pull request !281 from zhushengle/pm_optimize
2021-09-09 06:55:55 +00:00
zhushengle c6600d9ddd fix: 优化低功耗流程
1.normal和其它模式分离,流程分层化,使得结构较为清晰
2.tick timer处理实现优化为注册对应机制则默认支持,不注册则不执行,简化使用逻辑
3.添加 pm测试用例
Close #I46VXK

Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I7810ce0ca12dce96972399adf88e8319bb487905
2021-09-09 11:46:23 +08:00
openharmony_ci fd8ca3f5dc !289 add xtensa and csky arch support
Merge pull request !289 from LiteOS/master
2021-09-08 06:55:10 +00:00
lanche1024 8bcab9ab7a add csky arch support
Signed-off-by: LiteOS2021 <dinglu@huawei.com>
2021-09-07 17:11:10 +08:00
zhushengle 3798091d87 fix: 内核模块编译增加-Werror编译选项,且清除内核编译告警
Close #I46E6S

Change-Id: If1362c02a0a344da881a9bf90e41f0a43ba33609
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-09-06 16:16:43 +08:00
lnlan 53117f9f47 feat: 按任务统计已经alloc的内存大小
【背景】
m核需补充shell命令,按任务统计已经alloc的内存大小
【修改方案】
1.新增在task命令中,在打印task
info前遍历所有内存节点,统计各任务所占用的内存节
点大小,在打印时将其打出。
2.内存节点中,taskid所占位数随系统最大任务数调整
【影响】
对现有的产品编译不会有影响。

re #I44WNU

Signed-off-by: lanleinan <lanleinan@163.com>
Change-Id: I080b5dd056966784c0752408f9e320ca0e97c7f7
2021-08-28 06:14:34 +00:00
openharmony_ci 75f975c424 !279 feat: 完善m核qemu串口驱动,支持shell输入
Merge pull request !279 from lnlan/shell_fix
2021-08-26 02:03:22 +00:00
lnlan c4dc5ab0f8 feat: 完善m核qemu串口驱动,支持shell输入
【背景】
m核qemu需完善串口驱动,支持shell输入
【修改方案】
1.完善串口驱动
2.添加shell任务,获取串口输入并下发处理
【影响】
对现有的产品编译不会有影响。

re #I46N7F

Signed-off-by: lanleinan <lanleinan@163.com>
Change-Id: Ib58d4e633081743e64412cb65aa209d3356d6c1c
2021-08-26 01:15:17 +00:00
openharmony_ci c8015dcb49 !282 m核lwip增加dhcp_is_bound接口
Merge pull request !282 from 刘建东/master
2021-08-24 10:30:36 +00:00
YOUR_NAME 84a180d585 feat: add interface of dhcp_is_bound
add interface of dhcp_is_bound

close: #I46W08

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-08-24 11:34:03 +08:00
wangchen deff7c921f fix: M核编译配置修改
【背景】完善M核编译配置选项。

【修改方案】
1,在build.gn中添加config.gni的包含
2,修改部分build.gn中的格式规范问题

【影响】
对现有的产品编译不会有影响。

re #I46XEA
Signed-off-by: wangchen <253227059@qq.com>
2021-08-24 10:57:48 +08:00
YOUR_NAME be03374c3c refactor: decouple lwip and hilog for liteos_m
decouple lwip and hilog for liteos_m

close: #I46DAH

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-08-20 16:17:32 +08:00
YOUR_NAME 7ad3a22b4d fix: delete unused symbols for default config
delete unused symbols for default config

close: #I45HN3

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-08-16 17:54:52 +08:00
silen 67d74559d1 feat: L0 armquem 剥离工具链
Change-Id: I19c13fd24141271087948fad9434558b823df62b
Signed-off-by: silen <wuyunjie@huawei.com>
2021-08-12 16:23:31 +08:00
zhangfanfan2 c1614ce2b4 fix: 宏LOSCFG_SUPPORT_FATFS在fs.c中存在使用问题,导致无fatfs的情况下,编译出错
代码中使用#ifdef LOSCFG_SUPPORT_FATFS控制业务逻辑,但LOSCFG_SUPPORT_FATFS的
默认定义为:#define LOSCFG_SUPPORT_FATFS 0,这样#ifdef LOSCFG_SUPPORT_FATFS控制
的逻辑一定会被编译。修改方式:使用的地方统一为#if的形式

close: #I44XNR

Signed-off-by: zff <zhangfanfan2@huawei.com>
2021-08-11 09:32:09 +00:00
openharmony_ci fa0b8b0dcb !227 feat: 支持native动态加载组件
Merge pull request !227 from Harylee/mem
2021-08-11 03:14:24 +00:00
Haryslee d75383400e feat: 支持native动态加载组件
1.【需求描述】
动态库开发部分:
gcc的sample code。
提供生成暴露接口生成机制,并允许产品新增需要暴露的接口。
提供可以判断库允许资源大小的能力,并提供相关工具辅助开发者确定开发的库要求的资源是否可以满足。

动态库运行部分:
提供elf load的api,可以加载指定路径下的库,并完成符号重映射等运行准备。
提供elf 暴露符号调用的api,用于调用库的api。
elf加载&链接异常时,有明确错误记录,返回明确错误类型。
提供elf 卸载的api。

2.【方案描述】
(1) 通过灌段的形式记录需要导出符号的地址信息,用于暴露内核对外的接口,在加载链接器中通过查询
对应的符号信息获取符号地址。
(2) 加载链接时,解析共享库并将共享库中可加载段通过文件系统读入内存中,并对共享库中未定义的、
需要重定位的符号进行重定位。需要调用符号时,根据符号名通过哈希表即可查询共享库提供的对应符号
的地址。

BREAKING CHANGE:
新增4个对外接口,声明在los_dynlink.h文件中,分别为:
(1) LOS_DynlinkInit: 动态加载模块初始化。
(2) LOS_SoLoad: 加载指定路径的共享库。
(3) LOS_FindSym: 根据共享库句柄查找指定符号。
(4) LOS_SoUnload: 卸载共享库。

close #I418HJ

Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: I7669b7ef20096294f9d1094c85ac6602fefad354
2021-08-10 20:26:40 +08:00
openharmony_ci 11bca47b6e !247 fix: tick 动态化计算优化,减小中断执行时间对系统总体时间的影响,保证软件定时器的响应精度。
Merge pull request !247 from zhushengle/tick_sched
2021-08-10 06:16:34 +00: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 7fe9cc9aa0 !253 fix: L0 net 编译修复
Merge pull request !253 from give-me-five/master
2021-08-09 03:46:44 +00:00
silen 299813cdb4 fix: net compile fix
Change-Id: Ieb264f28e831f867d833a66fa25fec57e740a162
Signed-off-by: silen <wuyunjie@huawei.com>
2021-08-09 10:01:23 +08:00
lnlan 218d16f85f style:修改 liteos_a unittest 测试文件的 licence 注释
【背景】解除告警
【修改方案】
 格式化修改告警文件的文件头注释格式

re #I44497

Signed-off-by: lanleinan <lanleinan@163.com>
Change-Id: Id2d61deb9d9a14d5e29b915c3a64c75e11e12eda
2021-08-05 14:32:21 +00:00
JerryH 8692ed33a3 fix: backtrace代码段判断函数定义成弱函数,如果有多个代码段,那么可根据实际情况重定义
close #I420SD

Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: Id2e89e11df8aeb906cdd36b2c40c51c2e140a569
2021-08-02 15:43:01 +08:00
openharmony_ci 23d56f4b2a !241 M核代码告警清零
Merge pull request !241 from wangchen/m_codex
2021-07-31 03:40:50 +00:00
openharmony_ci 1d33f5e4b0 !234 feat: L0 支持Trace
Merge pull request !234 from LiteOS/master
2021-07-31 02:58:59 +00:00
wangchen cb5f862eaf fix: M核代码告警清零
【背景】定期M核代码告警清零。

【修改方案】
根据工具扫描结果,对代码告警进行更改。

【影响】
对现有的产品编译不会有影响。

re #I4386N
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 18:34:08 +08: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
silen 911a767992 fix: open shell & fix qemu compile
Change-Id: Ia7488c02db7a41e0f681d008882b7c2721e6b207
Signed-off-by: silen <wuyunjie@huawei.com>
2021-07-29 11:19:03 +08:00
silen ae05de3ffd fix: ping cmd compile fail
Change-Id: I692de82275b8da03ac51b493b2f74148c96574d0
Signed-off-by: silen <wuyunjie@huawei.com>
2021-07-21 08:50:28 +08:00
silen fd2227e5c8 fix: l0 shell adapt new master
Change-Id: Ia4e0c848b76e8fda7c5a2f9e1b2246b2a09947a4
Signed-off-by: silen <wuyunjie@huawei.com>
2021-07-17 19:54:44 +08:00
silen ad15bbd6a4 fix: 修复task命令格式错误,增加copyright
Change-Id: Ib573f981b2a83ab6f75741dd4a670c0ef3adf3f8
Signed-off-by: silen <wuyunjie@huawei.com>
2021-07-14 16:27:30 +08:00
openharmony_ci bbce405227 !218 feat: L0 新增shell功能,增加命令ls cd等
Merge pull request !218 from give-me-five/master
2021-07-14 03:33:18 +00:00
silen 97283b7c5d feat: add L0 shell function
Change-Id: I7f10bd365455c32006c22a9f6e2368fe6c229a6a
Signed-off-by: silen <wuyunjie@huawei.com>
2021-07-13 22:04:30 +08:00
YOUR_NAME 948501ac73 feat: provide getifaddrs for liteos_m
provide getifaddrs for liteos_m

close: #I400S5

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-07-12 10:49:33 +08:00
openharmony_ci bf045e3eba !213 消除编译告警
Merge pull request !213 from x_xiny/master
2021-07-09 08:37:18 +00:00
x_xiny d8c8c22666 fix:消除编译告警
【背景】
 消除编译告警

【修改方案】
 消除编译告警

 re #I3ZC1R

 Change-Id: If5748c7ed420a9ff822c20ffb17dee2815e9bddc

 Signed-off-by: x-xiny <1301913191@qq.com>

Change-Id: Id78631543b0c41f11e1c3594200a3ad43543bbf5
2021-07-09 10:05:31 +08:00
Leon Chan ceaed2dc86 feat: add file type support for LfsStat
close #I3ZCDR
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-07-06 16:00:13 +08:00
Leon Chan 452f36403d fix: littlefs inappropriate return value and errno
return value and errno conforming to the POSIX.1.2008 standards

close: #I3YIVT
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-06-30 18:38:01 +08:00
openharmony_ci 7fcf7ee3e6 !202 m核lwip提供gn编译脚本
Merge pull request !202 from 刘建东/master
2021-06-28 12:32:54 +00:00
YOUR_NAME 8515f0dc8f chore: provide lwip gn file for liteos_m
provide lwip gn file for liteos_m

close: #I3Y2WZ

Signed-off-by: liujiandong <liujiandong1@huawei.com>
2021-06-28 17:13:44 +08:00
openharmony_ci 66f242f85b !201 littlefs编译告警消除
Merge pull request !201 from LeonChan/lc-compile-warnings
2021-06-28 09:11:23 +00:00
Leon Chan 75f61870a0 fix: compile warnings
1, function prototypes: LfsSeek, LfsCloseDir
2, fix some other minor warnings and remove some while spaces

close: #I3Y57X
Signed-off-by: Leon Chan <chenwei26@huawei.com>
Change-Id: Id8b77c8a6b2e8d2b9bc5f02e22bfc6a15d70f648
2021-06-28 15:42:28 +08:00
Leon Chan 82fad6c36f fix: rollback resources when opendir failed
close: #I3Y577
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-06-28 15:29:31 +08:00
openharmony_ci 586d9a18b3 !199 M核littlefs当文件open失败时,需要回收fd,否则会有fd泄露
Merge pull request !199 from li_zan/master
2021-06-26 08:22:24 +00:00
li_zan b458e12ed5 fix: M核littlefs当文件open失败时,需要回收fd,否则会有fd泄露
close:#I3XU6R

Signed-off-by: li_zan <371442490@qq.com>
2021-06-26 09:33:57 +08:00
li_zan b0119f6185 Merge branch 'master' of gitee.com:openharmony/kernel_liteos_m into master 2021-06-24 01:33:46 +00:00
li_zan b55cfc1ba7 fix: 修复littlefs的多分区挂载时,对pathname的处理逻辑异常
close:#I3WWFA

Signed-off-by: li_zan <371442490@qq.com>
2021-06-24 09:31:15 +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
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
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
openharmony_ci 749bd8a481 !176 musl归一化后调整libc的构建
Merge pull request !176 from Caoruihong/porting2
2021-06-11 17:36:29 +08:00
Caoruihong a5660c2217 chore: remove the files copied from musl
copied and auto-generated files are redundant and should not be tracked.

Change-Id: I22bb3a1873ba6e0be3008306624b50772cdc91b5
Signed-off-by: Caoruihong <crh.cao@huawei.com>
2021-06-11 11:26:58 +08:00
openharmony_ci a3ab46ec31 !175 修复M核littlefs GN编译的若干错误
Merge pull request !175 from li_zan/master
2021-06-11 11:23:45 +08:00
li_zan d77828e206 fix: 修复M核littlefs GN编译的若干错误
close:I3V7ZH

Signed-off-by: li_zan <371442490@qq.com>
2021-06-11 09:48:32 +08:00
openharmony_ci db89b353e9 !166 修复fatfs文件系统中部分指针访问前未判空、全局变量保护不完全问题。
Merge pull request !166 from JING/fatfs
2021-06-10 13:21:37 +08:00
JerryH 97a5b6d8dc Merge branch 'master' of gitee.com:openharmony/kernel_liteos_m into backtrace 2021-06-09 10:41:58 +08:00
openharmony_ci 0ba33abcd1 !174 m核上littlefs新增错误码功能
Merge pull request !174 from li_zan/master
2021-06-09 09:48:44 +08:00
li_zan a062378631 fix: m核上littlefs新增错误码功能
close:#I3UVMQ

Signed-off-by: li_zan <371442490@qq.com>
2021-06-08 19:13:44 +08:00
chenjing bc7a914bce fix: protect from accssing NULL pointer, access g_handle after fslock
close #I3UCX3

Signed-off-by: chenjing <chenjing139@huawei.com>
Change-Id: Ie4d5c1923c2d49e283c77f46d01784bed065a507
2021-06-04 16:20:11 +08:00
openharmony_ci 3d2a102d35 !160 fix: fatfs中宏FS_LOCK_TIMEMOUT_SEC拼写错误
Merge pull request !160 from zhushengle/fs
2021-06-04 14:47:51 +08:00
openharmony_ci af9b9ee7fe !157 fix: comment error
Merge pull request !157 from kenneth/los_backtrace.h2
2021-06-04 14:44:56 +08:00
openharmony_ci 162673b546 !154 fix: change cpup retval range
Merge pull request !154 from kenneth/LOS_HistorySysCpuUsage2
2021-06-04 14:43:42 +08:00
zhushengle 42dc308369 fix: Fixed a spelling error in FS_LOCK_TIMEOUT_SEC.
Close #I3TL66

Change-Id: Id7facf210d7bc3c29c631e2f0b48a332e7f1348c
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-06-04 10:40:44 +08:00
kenneth a37b73d759 fix: comment error
correct typo in comments

close https://gitee.com/openharmony/kernel_liteos_m/issues/I3SLNU

Signed-off-by: kenneth <459864689@qq.com>
2021-06-03 20:49:18 +08:00
kenneth d00a35ba92 fix: change cpup retval range
change cpup range from 100 to 1000

close https://gitee.com/openharmony/kernel_liteos_m/issues/I3SXJ7

Signed-off-by: kenneth <459864689@qq.com>
2021-06-03 20:34:28 +08:00
li_zan 51335629d0 Fix: littlefs some bug
Signed-off-by: li_zan <371442490@qq.com>
2021-06-03 19:33:09 +08:00
arvinzzz 2d9bbd2769 fix: 修复不规范的copyright
close: #I3SPJ1
Change-Id: I6cb01024ef342a0190f5dc9f6cb3a1e815692832

Signed-off-by: arvinzzz <fcykztyu@163.com>
Change-Id: I45c63592b08d29587778209de6af17f932dc86d0
2021-06-02 11:07:59 +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
openharmony_ci 8856114e62 !134 M核littlefs支持多分区挂载
Merge pull request !134 from li_zan/master
2021-05-20 16:26:16 +08:00
li_zan 3181b4395d Add Multi mount func 2021-05-20 15:36:54 +08:00
li_zan 45c72e7927 Add Multi mount func 2021-05-20 14:21:04 +08:00
Caoruihong 8d353084d6 remove symlinks which is not supported on windows platform
use submodules instead of symlinks for bounds_checking_function and cmsis_os2.h

Change-Id: I105c3d2c537d9c3c725adf1265a3312df4286916
2021-05-17 22:28:19 +08:00
openharmony_ci 517282d51c !121 新增M核文件系统vfs层,支持多种文件系统类型
Merge pull request !121 from JING/seren
2021-05-17 18:58:18 +08:00
chenjing 5479dd66d7 fix: add liteos_m vfs
Close #I3R493

Change-Id: Ic799182b46c6c04c879d1b2202bda6b1f2cf40df
2021-05-17 15:57:44 +08:00
YOUR_NAME bcc34e22ed fix: modify the return type of LOS_IntLock from UINTPTR to UINT32.
Change-Id: I6207e5cb7d612a154a88de4e9e274c67127361d8
2021-05-14 11:33:05 +08:00
openharmony_ci 658c340644 !109 XX产品上,存在使用littlefs文件系统重复打开文件会新创建Fd,与预期不一致,改为返回失败
Merge pull request !109 from li_zan/master
2021-05-12 11:05:13 +08:00
li_zan 7d9976cd90 Add already opened file logic 2021-05-11 20:30:31 +08:00
li_zan 602c9f6dfa Add already opened file logic 2021-05-08 17:00:11 +08:00
li_zan 96d2f2910e Add already opened file logic 2021-05-08 15:18:01 +08:00
li_zan 3a4a8b0680 Add already opened file logic 2021-05-08 15:14:45 +08:00
li_zan 4aeaf030a2 Add already opened file logic 2021-05-08 11:31:27 +08:00
li_zan 49e9044529 Add already opened file logic 2021-05-08 11:14:33 +08:00
li_zan 94c0727e1d Add already opened file logic 2021-05-07 15:25:42 +08:00
li_zan cd292f8428 Add already opened file logic 2021-05-07 11:35:51 +08:00
li_zan a99f817c23 Add already opened file logic 2021-05-07 11:35:08 +08:00
openharmony_ci 167b4d0c37 !87 合入某功能产品在M核上文件系统littlefs的适配代码
Merge pull request !87 from li_zan/master
2021-05-07 10:10:16 +08:00
li_zan 9bebc0fb82 add littlefs code 2021-04-30 17:02:42 +08:00
li_zan 2d21fca6e8 add littlefs code 2021-04-30 16:29:10 +08:00
li_zan 928827f62e add littlefs code 2021-04-30 15:16:34 +08:00
li_zan 580ef55f7e add littlefs code 2021-04-30 14:33:00 +08:00
zhushengle 2f9bfcc6ee fix: L0 GN compilation problem
Close: #I3ORHS
Change-Id: Ia105084336f2ba66f91546226a9383646a0148ce
2021-04-29 10:38:54 +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
openharmony_ci 6c1ce1c1cc !84 style: align with first param line
Merge pull request !84 from MGY917/master
2021-04-27 11:40:12 +08:00
openharmony_ci 4e568d1cbf !92 先使用顶层third_party, 后继再改用本仓库中的third_party
Merge pull request !92 from Caoruihong/top_third_party
2021-04-26 21:23:14 +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
Caoruihong 3db2a98360 keep old path available
Change-Id: I0b97d5f82386c6d642b94c390e24eede81cd7c54
2021-04-26 18:27:52 +08:00
Caoruihong 4d556fbe90 use top third_party
Change-Id: I382b10ef7a6adc328777349bce142e58895f7c8d
2021-04-26 17:11:56 +08:00
li_zan ac46317e0f add littlefs code 2021-04-25 20:42:35 +08:00
li_zan 10b416e74f add littlefs code 2021-04-25 17:41:42 +08:00
li_zan 3ae9d36049 add littlefs code 2021-04-24 11:50:43 +08:00
li_zan 606bd9ca08 add littlefs code 2021-04-24 11:23:49 +08:00
openharmony_ci 8168885709 !82 加入FatFs同时修正BUILD.gn中third_party路径
Merge pull request !82 from Caoruihong/fix_thirdparty_path
2021-04-23 17:57:13 +08:00