Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Mozi
rt-thread
提交
e6a4ad7b
R
rt-thread
项目概览
Mozi
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e6a4ad7b
编写于
4月 02, 2019
作者:
W
wangyq2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[bsp/es32f0654] add pm driver
上级
2236024d
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
146 addition
and
0 deletion
+146
-0
bsp/es32f0654/.config
bsp/es32f0654/.config
+5
-0
bsp/es32f0654/README.md
bsp/es32f0654/README.md
+1
-0
bsp/es32f0654/drivers/Kconfig
bsp/es32f0654/drivers/Kconfig
+7
-0
bsp/es32f0654/drivers/SConscript
bsp/es32f0654/drivers/SConscript
+4
-0
bsp/es32f0654/drivers/drv_pm.c
bsp/es32f0654/drivers/drv_pm.c
+110
-0
bsp/es32f0654/drivers/drv_pm.h
bsp/es32f0654/drivers/drv_pm.h
+16
-0
bsp/es32f0654/rtconfig.h
bsp/es32f0654/rtconfig.h
+3
-0
未找到文件。
bsp/es32f0654/.config
浏览文件 @
e6a4ad7b
...
...
@@ -359,6 +359,11 @@ CONFIG_BSP_USING_UART2=y
#
# CONFIG_BSP_USING_RTC is not set
#
# PM Drivers
#
# CONFIG_BSP_USING_PM is not set
#
# Onboard Peripheral Drivers
#
...
...
bsp/es32f0654/README.md
浏览文件 @
e6a4ad7b
...
...
@@ -43,6 +43,7 @@ ES-PDS-ES32F0654-V1.1
| PWM | 支持 | PWM0/1/2/3 |
| TIMER | 支持 | TIMER0/1/2/3 |
| RTC | 支持 | RTC |
| PM | 支持 | Power Management |
### 1.2 注意事项
...
...
bsp/es32f0654/drivers/Kconfig
浏览文件 @
e6a4ad7b
...
...
@@ -109,6 +109,13 @@ menu "Hardware Drivers Config"
default n
endmenu
menu "PM Drivers"
config BSP_USING_PM
bool "Using PM"
select RT_USING_PM
default n
endmenu
endmenu
menu "Onboard Peripheral Drivers"
...
...
bsp/es32f0654/drivers/SConscript
浏览文件 @
e6a4ad7b
...
...
@@ -39,6 +39,10 @@ if GetDepend('BSP_USING_HWTIMER0') or GetDepend('BSP_USING_HWTIMER1') or GetDepe
if
GetDepend
([
'BSP_USING_RTC'
]):
src
+=
[
'drv_rtc.c'
]
# add pm driver code
if
GetDepend
([
'BSP_USING_PM'
]):
src
+=
[
'drv_pm.c'
]
CPPPATH
=
[
cwd
]
group
=
DefineGroup
(
'Drivers'
,
src
,
depend
=
[
''
],
CPPPATH
=
CPPPATH
)
...
...
bsp/es32f0654/drivers/drv_pm.c
0 → 100644
浏览文件 @
e6a4ad7b
/*
* Copyright (C) 2018 Shanghai Eastsoft Microelectronics Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2019-04-01 wangyq the first version
*/
#include <rthw.h>
#include <rtdevice.h>
#include "board.h"
#include "drv_pm.h"
#include <ald_pmu.h>
#ifdef RT_USING_PM
static
void
_drv_pm_enter
(
struct
rt_pm
*
pm
)
{
rt_uint32_t
mode
;
mode
=
pm
->
current_mode
;
switch
(
mode
)
{
case
PM_RUN_MODE_NORMAL
:
break
;
case
PM_SLEEP_MODE_SLEEP
:
__WFI
();
break
;
case
PM_SLEEP_MODE_TIMER
:
pmu_stop2_enter
();
break
;
case
PM_SLEEP_MODE_SHUTDOWN
:
pmu_standby_enter
(
PMU_STANDBY_PORT_NONE
);
break
;
default:
RT_ASSERT
(
0
);
break
;
}
}
static
void
_drv_pm_exit
(
struct
rt_pm
*
pm
)
{
rt_uint32_t
mode
;
RT_ASSERT
(
pm
!=
RT_NULL
);
mode
=
pm
->
current_mode
;
switch
(
mode
)
{
case
PM_RUN_MODE_NORMAL
:
break
;
case
PM_SLEEP_MODE_SLEEP
:
break
;
case
PM_SLEEP_MODE_TIMER
:
break
;
case
PM_SLEEP_MODE_SHUTDOWN
:
break
;
default:
RT_ASSERT
(
0
);
break
;
}
}
#if PM_RUN_MODE_COUNT > 1
static
void
_drv_pm_frequency_change
(
struct
rt_pm
*
pm
,
rt_uint32_t
frequency
)
{
return
;
}
#endif
static
int
drv_hw_pm_init
(
void
)
{
static
const
struct
rt_pm_ops
_ops
=
{
_drv_pm_enter
,
_drv_pm_exit
,
#if PM_RUN_MODE_COUNT > 1
_drv_pm_frequency_change
,
#endif
RT_NULL
,
RT_NULL
,
RT_NULL
};
rt_uint8_t
timer_mask
;
/* initialize timer mask */
timer_mask
=
1UL
<<
PM_SLEEP_MODE_TIMER
;
/* initialize system pm module */
rt_system_pm_init
(
&
_ops
,
timer_mask
,
RT_NULL
);
return
0
;
}
INIT_BOARD_EXPORT
(
drv_hw_pm_init
);
#endif
bsp/es32f0654/drivers/drv_pm.h
0 → 100644
浏览文件 @
e6a4ad7b
/*
* Copyright (C) 2018 Shanghai Eastsoft Microelectronics Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2019-04-01 wangyq the first version
*/
#ifndef DRV_PM_H__
#define DRV_PM_H__
int
rt_hw_pm_init
(
void
);
#endif
bsp/es32f0654/rtconfig.h
浏览文件 @
e6a4ad7b
...
...
@@ -178,6 +178,9 @@
/* RTC Drivers */
/* PM Drivers */
/* Onboard Peripheral Drivers */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录