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
JerryH
9709d29b87
fix: 增加MPU功能的开关宏,默认关闭
...
close #I3WE0S
Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: Id193fd555877ac0c6b5b43e5dd5ede32531b86c4
2021-08-10 19:27:14 +08:00
JerryH
c1a6245368
fix: 解决arm9编译冲突问题
...
close #I420PQ
Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: I788de96b176ae73541f1dc0577262b57179151a7
2021-08-03 10:27:20 +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
8f5cefe41a
!225 fix: 在内核初始化前期启动tick timer
...
Merge pull request !225 from zhushengle/tick
2021-07-31 02:59:35 +00:00
wangchen
cb5f862eaf
fix: M核代码告警清零
...
【背景】定期M核代码告警清零。
【修改方案】
根据工具扫描结果,对代码告警进行更改。
【影响】
对现有的产品编译不会有影响。
re #I4386N
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 18:34:08 +08:00
wangchen
15a2c17f79
fix: trustzone 中断适配
...
【背景】当前无法使用 trustzone。
【修改方案】
由于tz需要使用svc中断,因此删除之前使用的HalExcSvcCall的地方,改为HalSVCHandler
【影响】
对现有的产品编译不会有影响。
re #I42TFV
Signed-off-by: wangchen <253227059@qq.com>
2021-07-28 17:40:03 +08:00
zhushengle
70f3aa1c11
fix: risc-v 锁中断在调度后失效
...
risc-v架构中,由于执行完mret指令之后,未将mstatus.mpie位清除,
导致锁中断后调度保存上下文信息后, 恢复上下文时误将中断打开。
Close #I42OLJ
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ib97b8bd0fc56bd4b2a7e5c474cb240db4e9c2419
2021-07-28 08:57:45 +08:00
zhushengle
b3841ed1dd
fix: 在内核初始化前期启动tick timer
...
解决系统未初始化完成前无timer可用的问题。
Close #I410F0
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I3799b9b0ff03cb1dfe80a97816a484df28ae49fd
2021-07-21 10:02:42 +08:00
openharmony_ci
c7b91d7a31
!222 优化arm9调度汇编代码,任务执行默认system模式,解决多种模式使用混乱问题
...
Merge pull request !222 from JerryH/arm9
2021-07-14 03:11:52 +00:00
JerryH1011
97b5b0837b
feat: Support arm9 fiq swi mode and using system mode.
...
close: #I3WLCN
Change-Id: Id14c4e903ca3c3271faf2ecdf6791163ac93b9a8
Signed-off-by: JerryH1011 <huangjieliang@huawei.com>
2021-07-13 20:23:21 +08:00
openharmony_ci
1ab9813256
!205 L0 LiteOS-M支持ARM9架构
...
Merge pull request !205 from JerryH/master
2021-07-12 00:44:56 +00:00
JerryH1011
6d7c9dfe59
feat: Support arm9
...
close: #I3WLCN
Change-Id: Id8e3ce9a9a7749cb27b52562e6d506803b38d9af
Signed-off-by: JerryH1011 <huangjieliang@huawei.com>
2021-07-12 06:39:24 +08:00
zhushengle
76dc343c88
feat: risc-v gn 编译框架添加汇编编译选项
...
Close #I3YS5Y
Change-Id: I380bc3442222ba18a0eebba4022ad6ca032e3de2
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-07-05 09:26:45 +08:00
wangchen
d469da29c6
feat: M33平台支持GCC环境的Trustzone
...
【背景】M33平台当前仅支持IAR环境的tz,不满足云雀平台需求。
【修改方案】
1. 将 M33当前已有的IAR trustzone修改为gcc可用。
【影响】
对现有的产品编译不会有影响。
re #I3Y85I
Signed-off-by: wangchen <253227059@qq.com>
2021-06-29 15:16:57 +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
kenneth
eb668eb9e0
fix: add API LOS_HwiCreate and LOS_HwDelete
...
新增对外接口LOS_HwiCreate、LOS_HwiDelete
close #I3R75F
Signed-off-by: kenneth <459864689@qq.com>
2021-06-18 08:53:22 +08:00
kenneth
ef12c89c7a
fix: fix print format compilation warning
...
fix print format compilation warning by changing 0x%x to 0x%p
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3OFSQ
Signed-off-by: kenneth <459864689@qq.com>
2021-06-10 14:52:47 +08:00
kenneth
bff65877a2
fix: correct the counter of exception type
...
correct the counter of exception type from 19 to 21
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3SR54
Signed-off-by: kenneth <459864689@qq.com>
2021-06-03 20:45:12 +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
kenneth
c3eb3e59e6
fix: fix __cplusplus typo
...
remove extra c in macro definition __cpluscplus
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3QQAF
2021-05-18 09:51:34 +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
openharmony_ci
0be2ecfdd0
!110 fix: corrent spelling
...
Merge pull request !110 from rtos-lover/los_debug
2021-05-15 09:41:16 +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
YOUR_NAME
c70ef201f3
Add Cortex-m33 TrustZone about IAR
...
close #I3MX1F
Change-Id: I449b01ad7ac714412a26bb9f3a6b723a6c74ca3f
2021-05-11 10:45:52 +08:00
rtos-lover
02ac3ade30
fix:correct spelling
...
corrent those typos in log_debug.h los_exc.S
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3PVZV
2021-05-08 10:00:57 +08:00
openharmony_ci
032f96e7d6
!102 fix: include file log_config.h in los_mpu.c
...
Merge pull request !102 from kenneth/master
2021-04-30 08:35:44 +08:00
kenneth
1932d714a5
fix: include file log_config.h in los_mpu.c
...
include log_config.h in kernel\arch\arm\cortex-m7\iar\los_mpu.c to solve compilation issue
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3OHY2
2021-04-29 15:23:44 +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
e638d1a41a
!60 Add support for Nuclei RISC-V 32 bit processor in LiteOS-M of OpenHarmony
...
Merge pull request !60 from linzewenTin/dev_nuclei
2021-04-27 20:43:55 +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
4d556fbe90
use top third_party
...
Change-Id: I382b10ef7a6adc328777349bce142e58895f7c8d
2021-04-26 17:11:56 +08:00
linzewen
70620b1cb6
Kernel: Remove unused function
...
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 20:58:53 -07:00
linzewen
4475439ca1
Kernel:Fix typo
...
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 20:08:41 -07:00
linzewen
dab3a81ac7
Kernel: Update task switch and delete some unused variables
...
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 19:55:37 -07: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
linzewen
1639cf484d
Target:Fix typo
...
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 02:25:13 -07:00
linzewen
6c60393567
kernel: update nuclei risc-v porting code
...
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 02:19:24 -07:00
linzewen
4170e57f18
Fix some issues
...
Move some functions from head file to c file
Change interrupt function argument
The "hwiPrio" argument high 16 bit for level and low 16 bit for priority
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 02:19:24 -07:00
linzewen
6c8da43bc9
Add Nuclei RISC-V support
...
This kernel is setup for rv32 arch with gcc compiler.
Signed-off-by: linzewen <linzewen@nucleisys.com>
2021-04-25 02:19:24 -07:00
openharmony_ci
f96848e4ce
!85 fix some typos
...
Merge pull request !85 from kenneth/master
2021-04-25 15:30:16 +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
kenneth
f6b8cab253
fix: fix some typo issues
...
change 'LOS_MOUDLE_ID' to 'LOS_MODULE_ID', change 'a interrupt' to 'an interrupt', change 'HalIsIntAcvive' to 'HalIsIntActive' and other typos.
close https://gitee.com/openharmony/kernel_liteos_m/issues/I3NNOQ , https://gitee.com/openharmony/kernel_liteos_m/issues/I3NNR6 , https://gitee.com/openharmony/kernel_liteos_m/issues/I3NNTL , https://gitee.com/openharmony/kernel_liteos_m/issues/I3NNQ1
2021-04-23 17:19:01 +08:00
openharmony_ci
3ca3a3e250
!80 fix: fix some misspell in comments
...
Merge pull request !80 from rtos-lover/master
2021-04-23 14:42:16 +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