Commit Graph

44 Commits

Author SHA1 Message Date
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
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
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
openharmony_ci afc362db23 !390 清理"bits/xxx.h"类头文件包含
Merge pull request !390 from Caoruihong/clean_bits
2021-11-15 09:35:10 +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
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
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
wangchen cb5f862eaf fix: M核代码告警清零
【背景】定期M核代码告警清零。

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

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

re #I4386N
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 18:34:08 +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 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
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 b55cfc1ba7 fix: 修复littlefs的多分区挂载时,对pathname的处理逻辑异常
close:#I3WWFA

Signed-off-by: li_zan <371442490@qq.com>
2021-06-24 09:31:15 +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 48067a0596 !178 littlefs三方源码采用GN编译修改上库+默认Mount路径可配置
Merge pull request !178 from li_zan/master
2021-06-16 10:58:13 +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
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
li_zan a062378631 fix: m核上littlefs新增错误码功能
close:#I3UVMQ

Signed-off-by: li_zan <371442490@qq.com>
2021-06-08 19:13:44 +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
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
chenjing 5479dd66d7 fix: add liteos_m vfs
Close #I3R493

Change-Id: Ic799182b46c6c04c879d1b2202bda6b1f2cf40df
2021-05-17 15:57:44 +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
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
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