Commit Graph

79 Commits

Author SHA1 Message Date
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 56dfd80ea5 !242 cmsis添加ThreadFlags接口支持
Merge pull request !242 from 野生毛霉君/master
2021-08-05 12:31:09 +00:00
mucor cea551e99e feat: add cmsis ThreadFlags support
close: I43AYB

Signed-off-by: mucor <mucorwang@gmail.com>
2021-08-05 17:01:20 +08:00
openharmony_ci ff7da435cf !243 fix: qemu中,timer模块缺少头文件
Merge pull request !243 from give-me-five/master
2021-08-02 03:43:09 +00:00
silen 12fed74722 fix: timer qemu 头文件缺失
Change-Id: I763ee6f0d013d84f36da9a7cb6d369f3d02e6c45
Signed-off-by: silen <wuyunjie@huawei.com>
2021-08-02 10:37:47 +08:00
wangchen cb5f862eaf fix: M核代码告警清零
【背景】定期M核代码告警清零。

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

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

re #I4386N
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 18:34:08 +08:00
lnlan c24c38b084 feat(kernel): 补充获取最高、最低优先级接口
【背景】
补充获取最高、最低优先级接口
【修改方案】
pthread补充这两个接口
int sched_get_priority_min(int policy)
int sched_get_priority_max(int policy)
【影响】
对现有的产品编译不会有影响。

re #I42HM7

Signed-off-by: lnlanc <lanleinan@163.com>
Change-Id: Id2ffc07e606ad497e8036f45dab1fa6a5ba981b3
2021-07-27 11:21:05 +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
Caoruihong bfa25fcaa3 feat: add deps to musl and securec
add deps to musl, and securec.
fwrap.c's contents are moved to musl.

Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Ib451736798efd9745c6fbbbe5f355eea13477031
2021-06-26 18:04:27 +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
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
YOUR_NAME 86d5544a3f fix: 新增函数regcomp,regfree和regexec支持
close: #I3U9LE

Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: Iff1180b89958b4d8c339a73f9a5f59cb47707c74
2021-06-23 15:27:50 +08:00
li_zan 139f83af39 fix: 修复M核上musl库缺失strdup,c的问题
close:#I3VZSI

Signed-off-by: li_zan <371442490@qq.com>
2021-06-17 20:28:47 +08:00
Caoruihong 420e781f33 chore: adjust path of posix header files
path of posix header files are exposed via public_configs
of //kernel/liteos_m/kal/posix

Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Id838549e1a952d6ddb8664792570f265edfbd91c
2021-06-15 12:11:12 +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 2f6ab80a06 !170 解决fclose等函数工具链重定义问题
Merge pull request !170 from wangchen/master
2021-06-07 21:02:56 +08:00
wangchen b244ad4ad0 feat: 解决fclose等函数工具链重定义问题
【背景】当前部分单板编译fclose等函数时与对应的gcc工具链重定义。

【修改方案】
1. fclose等函数新增weak定义,并恢复与musl源码一致。
2.外层添加wrap函数,用于配合gcc的--wrap选项。

【影响】
对现有的产品编译不会有影响,报重定义的工程需单独在自己的build.gn中添加
--wrap=xxx。

re #I3UG6O

Signed-off-by: wangchen <253227059@qq.com>
2021-06-05 11:30:16 +08:00
mucor 761b86096c fix(mbedtls): mbedtls l0 support
close: #I3UBJA
Signed-off-by: mucor <mucorwang@gmail.com>
2021-06-04 16:07:06 +08:00
give-me-five 6d7291660a fix: 删除MQ内冗余的重复宏定义
【背景】
去除多余宏定义
【修改方案】
宏定义规格有重复定义问题,需要删除。
【影响】
无
re #I3U5BE:删除重复定义的mq宏
2021-06-03 17:42:15 +08:00
openharmony_ci 5bd69a9ea6 !143 修复timer_settime接口功能缺陷
Merge pull request !143 from Zhaotianyu/0529timer_fix
2021-06-02 17:06:36 +08:00
arvinzzz a5f4e37e53 fix: 修复timer_settime只设置第一次到期时间时,到期时间不准的缺陷
close: #I3TCHA

Change-Id: Ie5c2ab74a8cbbd86dce913b53ae791f8f2da5133

Signed-off-by: arvinzzz <fcykztyu@163.com>
Change-Id: I571b0a3577026011aabcb0235985ea3e9be4441c
2021-06-02 16:37:53 +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
openharmony_ci 619fd42ded !101 将符号链接改回实体文件或目录
Merge pull request !101 from Caoruihong/remove_third_party
2021-05-20 09:32:26 +08:00
kenneth 0c2a675e2d fix: fix comment typo issue
The extentions is changed to extensions

close https://gitee.com/openharmony/kernel_liteos_m/issues/I3R970
2021-05-18 09:45:49 +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
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
openharmony_ci acf317a8cd !119 支持sleep函数
Merge pull request !119 from zhangfanfan2/master
2021-05-11 20:02:05 +08:00
zhangfanfan2 03be5e6e92 feature: Add sleep function 2021-05-11 16:48:35 +08:00
openharmony_ci d38087fa2f !67 LiteOs-m内核posix接口修改和用例补充
Merge pull request !67 from babu_g/noEmployeeNum_ChangeID_13651229_guanzehui
2021-05-11 16:47:41 +08:00
Caoruihong 9b498e651e fix tm_gmtoff
tm_gmtoff is opposite of timezone despite daylight saving.
timezone(global variable): seconds west of UTC, not adjusted for daylight saving.
tm_gmtoff(member of struct tm): seconds east of UTC, including adjustment for daylight saving.

Change-Id: If2e76b7da64989fb2df063ce4101d317474a7ab7
2021-05-08 11:17:02 +08:00
Haryslee fcf7db5022 fix:delete redundant local variable
Change-Id: Ia3a01d91866a96f8b47c66a4af0042254e24f69f
2021-05-06 15:21:54 +08:00
openharmony_ci b69ac58a97 !103 fix: modify type INLNIE
Merge pull request !103 from tel5021/master
2021-04-30 08:35:26 +08:00
tel5021 294a6d246b fix: modify type INLNIE 2021-04-29 16:03:21 +08:00
zhushengle 2f9bfcc6ee fix: L0 GN compilation problem
Close: #I3ORHS
Change-Id: Ia105084336f2ba66f91546226a9383646a0148ce
2021-04-29 10:38:54 +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
openharmony_ci 667d0992f0 !94 恢复hos_cmsis_adp.h
Merge pull request !94 from Caoruihong/restore_hos_cmsis_adp_h
2021-04-26 21:23:04 +08:00
Caoruihong 19ccb7c76c restore hos_cmsis_adp.h
Change-Id: I9a37ebec3ea4e94652a723ae612691b9888705ed
2021-04-26 18:57:39 +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
openharmony_ci b8cd812303 !83 fix:Provide a system CPU wait interface
Merge pull request !83 from zhushengle/master
2021-04-25 17:32:38 +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
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 583d177de0 fix:Provide a CPU delay interface
Close #I3NT3Y

Change-Id: I30c984a95a77cbddabdae2900ab8fcf9d7eac1ac
2021-04-23 14:50:27 +08:00
Caoruihong ad1e09ff77 add third_party FatFs and fix BUILD.gn
Change-Id: I456530ca5282d6c4b0904d04ae0a0a5ff155391a
2021-04-23 12:05:48 +08:00
zhushengle afdda22821 fix:Solution of conflict
Change-Id: If2565e5942ca019865720d56dd8bda1617044e6d
2021-04-22 14:33:20 +08:00
openharmony_ci 23360db35c !81 posix模块编译中增加 pthread_cond.c
Merge pull request !81 from zhangfanfan2/master
2021-04-22 13:57:04 +08:00
zhangfanfan2 0a22391490 feature:add "pthread_cond.c" to compile in posix module 2021-04-22 11:46:37 +08:00