Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
a6e961c2
U
U-Boot.Mirror
项目概览
OS
/
U-Boot.Mirror
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
U-Boot.Mirror
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a6e961c2
编写于
6月 07, 2011
作者:
F
Fabio Estevam
提交者:
Albert ARIBAUD
7月 04, 2011
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
MX5: Introduce a function for setting the chip select size
Signed-off-by:
N
Fabio Estevam
<
fabio.estevam@freescale.com
>
上级
a682b3f7
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
36 addition
and
1 deletion
+36
-1
arch/arm/cpu/armv7/mx5/soc.c
arch/arm/cpu/armv7/mx5/soc.c
+30
-0
arch/arm/include/asm/arch-mx5/imx-regs.h
arch/arm/include/asm/arch-mx5/imx-regs.h
+5
-0
arch/arm/include/asm/arch-mx5/sys_proto.h
arch/arm/include/asm/arch-mx5/sys_proto.h
+1
-1
未找到文件。
arch/arm/cpu/armv7/mx5/soc.c
浏览文件 @
a6e961c2
...
@@ -163,6 +163,36 @@ int cpu_mmc_init(bd_t *bis)
...
@@ -163,6 +163,36 @@ int cpu_mmc_init(bd_t *bis)
#endif
#endif
}
}
void
set_chipselect_size
(
int
const
cs_size
)
{
unsigned
int
reg
;
struct
iomuxc
*
iomuxc_regs
=
(
struct
iomuxc
*
)
IOMUXC_BASE_ADDR
;
reg
=
readl
(
&
iomuxc_regs
->
gpr1
);
switch
(
cs_size
)
{
case
CS0_128
:
reg
&=
~
0x7
;
/* CS0=128MB, CS1=0, CS2=0, CS3=0 */
reg
|=
0x5
;
break
;
case
CS0_64M_CS1_64M
:
reg
&=
~
0x3F
;
/* CS0=64MB, CS1=64MB, CS2=0, CS3=0 */
reg
|=
0x1B
;
break
;
case
CS0_64M_CS1_32M_CS2_32M
:
reg
&=
~
0x1FF
;
/* CS0=64MB, CS1=32MB, CS2=32MB, CS3=0 */
reg
|=
0x4B
;
break
;
case
CS0_32M_CS1_32M_CS2_32M_CS3_32M
:
reg
&=
~
0xFFF
;
/* CS0=32MB, CS1=32MB, CS2=32MB, CS3=32MB */
reg
|=
0x249
;
break
;
default:
printf
(
"Unknown chip select size: %d
\n
"
,
cs_size
);
break
;
}
writel
(
reg
,
&
iomuxc_regs
->
gpr1
);
}
void
reset_cpu
(
ulong
addr
)
void
reset_cpu
(
ulong
addr
)
{
{
...
...
arch/arm/include/asm/arch-mx5/imx-regs.h
浏览文件 @
a6e961c2
...
@@ -214,6 +214,11 @@
...
@@ -214,6 +214,11 @@
#define WDOG_EN (1 << 8)
#define WDOG_EN (1 << 8)
#define WDOG_LIMIT(x) (((x) & 0x3) << 9)
#define WDOG_LIMIT(x) (((x) & 0x3) << 9)
#define CS0_128 0
#define CS0_64M_CS1_64M 1
#define CS0_64M_CS1_32M_CS2_32M 2
#define CS0_32M_CS1_32M_CS2_32M_CS3_32M 3
/*
/*
* Number of GPIO pins per port
* Number of GPIO pins per port
*/
*/
...
...
arch/arm/include/asm/arch-mx5/sys_proto.h
浏览文件 @
a6e961c2
...
@@ -27,5 +27,5 @@
...
@@ -27,5 +27,5 @@
u32
get_cpu_rev
(
void
);
u32
get_cpu_rev
(
void
);
#define is_soc_rev(rev) ((get_cpu_rev() & 0xFF) - rev)
#define is_soc_rev(rev) ((get_cpu_rev() & 0xFF) - rev)
void
sdelay
(
unsigned
long
);
void
sdelay
(
unsigned
long
);
void
set_chipselect_size
(
int
const
);
#endif
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录