openharmony_kernel_liteos_m/kernel/arch/risc-v/riscv32/gcc
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
..
asm update openharmony 1.0.1 2021-03-11 20:30:40 +08:00
BUILD.gn fix: 修复不规范的copyright 2021-06-02 11:07:59 +08:00
los_arch_context.h fix: modify the return type of LOS_IntLock from UINTPTR to UINT32. 2021-05-14 11:33:05 +08:00
los_arch_interrupt.h fix:Fixed kernel error with header protector and header comment description. 2021-04-26 21:13:55 +08:00
los_arch_timer.h !80 fix: fix some misspell in comments 2021-04-23 14:42:16 +08:00
los_context.c fix:Solution of conflict. 2021-04-20 14:56:26 +08:00
los_dispatch.S IssueNo:#I3IK07 2021-04-13 21:48:04 +08:00
los_exc.S remove __cplusplus guards in .c files 2021-04-19 18:19:28 +08:00
los_interrupt.c fix: fix some typo issues 2021-04-23 17:19:01 +08:00
los_timer.c feat: L0 支持低功耗框架 2021-06-22 13:15:06 +08:00