Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
raspberrypi-kernel
提交
be124c94
R
raspberrypi-kernel
项目概览
openeuler
/
raspberrypi-kernel
通知
13
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
raspberrypi-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
be124c94
编写于
6月 04, 2009
作者:
S
Sascha Hauer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
system.c: runtime base address
Signed-off-by:
N
Sascha Hauer
<
s.hauer@pengutronix.de
>
上级
8db5d1a6
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
19 addition
and
9 deletion
+19
-9
arch/arm/mach-mx1/generic.c
arch/arm/mach-mx1/generic.c
+1
-0
arch/arm/mach-mx2/generic.c
arch/arm/mach-mx2/generic.c
+2
-0
arch/arm/mach-mx3/mm.c
arch/arm/mach-mx3/mm.c
+2
-0
arch/arm/plat-mxc/include/mach/common.h
arch/arm/plat-mxc/include/mach/common.h
+1
-0
arch/arm/plat-mxc/system.c
arch/arm/plat-mxc/system.c
+13
-9
未找到文件。
arch/arm/mach-mx1/generic.c
浏览文件 @
be124c94
...
...
@@ -41,6 +41,7 @@ static struct map_desc imx_io_desc[] __initdata = {
void
__init
mx1_map_io
(
void
)
{
mxc_set_cpu_type
(
MXC_CPU_MX1
);
mxc_arch_reset_init
(
IO_ADDRESS
(
WDT_BASE_ADDR
));
iotable_init
(
imx_io_desc
,
ARRAY_SIZE
(
imx_io_desc
));
}
arch/arm/mach-mx2/generic.c
浏览文件 @
be124c94
...
...
@@ -72,6 +72,7 @@ static struct map_desc mxc_io_desc[] __initdata = {
void
__init
mx21_map_io
(
void
)
{
mxc_set_cpu_type
(
MXC_CPU_MX21
);
mxc_arch_reset_init
(
IO_ADDRESS
(
WDOG_BASE_ADDR
));
iotable_init
(
mxc_io_desc
,
ARRAY_SIZE
(
mxc_io_desc
));
}
...
...
@@ -79,6 +80,7 @@ void __init mx21_map_io(void)
void
__init
mx27_map_io
(
void
)
{
mxc_set_cpu_type
(
MXC_CPU_MX27
);
mxc_arch_reset_init
(
IO_ADDRESS
(
WDOG_BASE_ADDR
));
iotable_init
(
mxc_io_desc
,
ARRAY_SIZE
(
mxc_io_desc
));
}
...
...
arch/arm/mach-mx3/mm.c
浏览文件 @
be124c94
...
...
@@ -75,6 +75,7 @@ static struct map_desc mxc_io_desc[] __initdata = {
void
__init
mx31_map_io
(
void
)
{
mxc_set_cpu_type
(
MXC_CPU_MX31
);
mxc_arch_reset_init
(
IO_ADDRESS
(
WDOG_BASE_ADDR
));
iotable_init
(
mxc_io_desc
,
ARRAY_SIZE
(
mxc_io_desc
));
}
...
...
@@ -82,6 +83,7 @@ void __init mx31_map_io(void)
void
__init
mx35_map_io
(
void
)
{
mxc_set_cpu_type
(
MXC_CPU_MX35
);
mxc_arch_reset_init
(
IO_ADDRESS
(
WDOG_BASE_ADDR
));
iotable_init
(
mxc_io_desc
,
ARRAY_SIZE
(
mxc_io_desc
));
}
...
...
arch/arm/plat-mxc/include/mach/common.h
浏览文件 @
be124c94
...
...
@@ -29,5 +29,6 @@ extern int mx35_clocks_init(void);
extern
int
mxc_register_gpios
(
void
);
extern
int
mxc_register_device
(
struct
platform_device
*
pdev
,
void
*
data
);
extern
void
mxc_set_cpu_type
(
unsigned
int
type
);
extern
void
mxc_arch_reset_init
(
void
__iomem
*
);
#endif
arch/arm/plat-mxc/system.c
浏览文件 @
be124c94
...
...
@@ -30,29 +30,28 @@
#include <asm/proc-fns.h>
#include <asm/system.h>
#ifdef CONFIG_ARCH_MX1
#define WDOG_WCR_REG IO_ADDRESS(WDT_BASE_ADDR)
#define WDOG_WCR_ENABLE (1 << 0)
#else
#define WDOG_WCR_REG IO_ADDRESS(WDOG_BASE_ADDR)
#define WDOG_WCR_ENABLE (1 << 2)
#endif
static
void
__iomem
*
wdog_base
;
/*
* Reset the system. It is called by machine_restart().
*/
void
arch_reset
(
char
mode
,
const
char
*
cmd
)
{
if
(
!
cpu_is_mx1
())
{
unsigned
int
wcr_enable
;
if
(
cpu_is_mx1
())
{
wcr_enable
=
(
1
<<
0
);
}
else
{
struct
clk
*
clk
;
clk
=
clk_get_sys
(
"imx-wdt.0"
,
NULL
);
if
(
!
IS_ERR
(
clk
))
clk_enable
(
clk
);
wcr_enable
=
(
1
<<
2
);
}
/* Assert SRS signal */
__raw_writew
(
WDOG_WCR_ENABLE
,
WDOG_WCR_REG
);
__raw_writew
(
wcr_enable
,
wdog_base
);
/* wait for reset to assert... */
mdelay
(
500
);
...
...
@@ -65,3 +64,8 @@ void arch_reset(char mode, const char *cmd)
/* we'll take a jump through zero as a poor second */
cpu_reset
(
0
);
}
void
mxc_arch_reset_init
(
void
__iomem
*
base
)
{
wdog_base
=
base
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录