Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
d32519ac
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,发现更多精彩内容 >>
提交
d32519ac
编写于
3月 26, 2019
作者:
T
Tom Rini
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
git://git.denx.de/u-boot-sh
- Various fixes for bugs found by u-boot test.py
上级
2b9b9cdd
c453fe3a
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
91 addition
and
8 deletion
+91
-8
arch/arm/dts/r8a7795-h3ulcb-u-boot.dts
arch/arm/dts/r8a7795-h3ulcb-u-boot.dts
+4
-0
arch/arm/dts/r8a7795-salvator-x-u-boot.dts
arch/arm/dts/r8a7795-salvator-x-u-boot.dts
+8
-0
arch/arm/dts/r8a7796-m3ulcb-u-boot.dts
arch/arm/dts/r8a7796-m3ulcb-u-boot.dts
+4
-0
arch/arm/dts/r8a7796-salvator-x-u-boot.dts
arch/arm/dts/r8a7796-salvator-x-u-boot.dts
+8
-0
arch/arm/dts/r8a77965-salvator-x-u-boot.dts
arch/arm/dts/r8a77965-salvator-x-u-boot.dts
+8
-0
arch/arm/dts/r8a77990-ebisu-u-boot.dts
arch/arm/dts/r8a77990-ebisu-u-boot.dts
+2
-0
drivers/clk/renesas/clk-rcar-gen2.c
drivers/clk/renesas/clk-rcar-gen2.c
+52
-6
drivers/mmc/sh_mmcif.c
drivers/mmc/sh_mmcif.c
+1
-1
drivers/mmc/tmio-common.c
drivers/mmc/tmio-common.c
+4
-1
未找到文件。
arch/arm/dts/r8a7795-h3ulcb-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -19,6 +19,10 @@
};
};
&vcc_sdhi0 {
u-boot,off-on-delay-us = <20000>;
};
&sdhi2_pins {
groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
power-source = <1800>;
...
...
arch/arm/dts/r8a7795-salvator-x-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -8,6 +8,14 @@
#include "r8a7795-salvator-x.dts"
#include "r8a7795-u-boot.dtsi"
&vcc_sdhi0 {
u-boot,off-on-delay-us = <20000>;
};
&vcc_sdhi3 {
u-boot,off-on-delay-us = <20000>;
};
&sdhi2_pins {
groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
power-source = <1800>;
...
...
arch/arm/dts/r8a7796-m3ulcb-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -19,6 +19,10 @@
};
};
&vcc_sdhi0 {
u-boot,off-on-delay-us = <20000>;
};
&sdhi2_pins {
groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
power-source = <1800>;
...
...
arch/arm/dts/r8a7796-salvator-x-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -8,6 +8,14 @@
#include "r8a7796-salvator-x.dts"
#include "r8a7796-u-boot.dtsi"
&vcc_sdhi0 {
u-boot,off-on-delay-us = <20000>;
};
&vcc_sdhi3 {
u-boot,off-on-delay-us = <20000>;
};
&sdhi2_pins {
groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
power-source = <1800>;
...
...
arch/arm/dts/r8a77965-salvator-x-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -8,6 +8,14 @@
#include "r8a77965-salvator-x.dts"
#include "r8a77965-u-boot.dtsi"
&vcc_sdhi0 {
u-boot,off-on-delay-us = <20000>;
};
&vcc_sdhi3 {
u-boot,off-on-delay-us = <20000>;
};
&sdhi2_pins {
groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
power-source = <1800>;
...
...
arch/arm/dts/r8a77990-ebisu-u-boot.dts
浏览文件 @
d32519ac
...
...
@@ -36,6 +36,7 @@
gpio = <&gpio5 17 GPIO_ACTIVE_HIGH>;
enable-active-high;
u-boot,off-on-delay-us = <20000>;
};
vccq_sdhi0: regulator-vccq-sdhi0 {
...
...
@@ -60,6 +61,7 @@
gpio = <&gpio0 4 GPIO_ACTIVE_HIGH>;
enable-active-high;
u-boot,off-on-delay-us = <20000>;
};
vccq_sdhi1: regulator-vccq-sdhi1 {
...
...
drivers/clk/renesas/clk-rcar-gen2.c
浏览文件 @
d32519ac
...
...
@@ -44,13 +44,17 @@ static const struct clk_div_table cpg_sd01_div_table[] = {
{
0
,
0
},
};
static
u8
gen2_clk_get_sdh_div
(
const
struct
clk_div_table
*
table
,
u8
div
)
static
u8
gen2_clk_get_sdh_div
(
const
struct
clk_div_table
*
table
,
u8
val
)
{
while
((
*
table
++
).
val
)
{
if
((
*
table
).
div
==
div
)
return
div
;
for
(;;)
{
if
(
!
(
*
table
).
div
)
return
0xff
;
if
((
*
table
).
val
==
val
)
return
(
*
table
).
div
;
table
++
;
}
return
0xff
;
}
static
int
gen2_clk_enable
(
struct
clk
*
clk
)
...
...
@@ -117,7 +121,7 @@ static ulong gen2_clk_get_rate(struct clk *clk)
case
CLK_TYPE_FF
:
rate
=
(
gen2_clk_get_rate
(
&
parent
)
*
core
->
mult
)
/
core
->
div
;
debug
(
"%s[%i] FIXED clk: parent=%i
div=%i mul
=%i => rate=%u
\n
"
,
debug
(
"%s[%i] FIXED clk: parent=%i
mul=%i div
=%i => rate=%u
\n
"
,
__func__
,
__LINE__
,
core
->
parent
,
core
->
mult
,
core
->
div
,
rate
);
return
rate
;
...
...
@@ -202,8 +206,50 @@ static ulong gen2_clk_get_rate(struct clk *clk)
return
-
ENOENT
;
}
static
int
gen2_clk_setup_mmcif_div
(
struct
clk
*
clk
,
ulong
rate
)
{
struct
gen2_clk_priv
*
priv
=
dev_get_priv
(
clk
->
dev
);
struct
cpg_mssr_info
*
info
=
priv
->
info
;
const
struct
cpg_core_clk
*
core
;
struct
clk
parent
,
pparent
;
u32
val
;
int
ret
;
ret
=
renesas_clk_get_parent
(
clk
,
info
,
&
parent
);
if
(
ret
)
{
debug
(
"%s[%i] parent fail, ret=%i
\n
"
,
__func__
,
__LINE__
,
ret
);
return
ret
;
}
if
(
renesas_clk_is_mod
(
&
parent
))
return
0
;
ret
=
renesas_clk_get_core
(
&
parent
,
info
,
&
core
);
if
(
ret
)
return
ret
;
if
(
strcmp
(
core
->
name
,
"mmc0"
)
&&
strcmp
(
core
->
name
,
"mmc1"
))
return
0
;
ret
=
renesas_clk_get_parent
(
&
parent
,
info
,
&
pparent
);
if
(
ret
)
{
debug
(
"%s[%i] parent fail, ret=%i
\n
"
,
__func__
,
__LINE__
,
ret
);
return
ret
;
}
val
=
(
gen2_clk_get_rate
(
&
pparent
)
/
rate
)
-
1
;
debug
(
"%s[%i] MMCIF offset=%x
\n
"
,
__func__
,
__LINE__
,
core
->
offset
);
writel
(
val
,
priv
->
base
+
core
->
offset
);
return
0
;
}
static
ulong
gen2_clk_set_rate
(
struct
clk
*
clk
,
ulong
rate
)
{
/* Force correct MMC-IF divider configuration if applicable */
gen2_clk_setup_mmcif_div
(
clk
,
rate
);
return
gen2_clk_get_rate
(
clk
);
}
...
...
drivers/mmc/sh_mmcif.c
浏览文件 @
d32519ac
...
...
@@ -696,7 +696,7 @@ static int sh_mmcif_dm_probe(struct udevice *dev)
return
ret
;
}
host
->
clk
=
clk_
get_rate
(
&
sh_mmcif_clk
);
host
->
clk
=
clk_
set_rate
(
&
sh_mmcif_clk
,
97500000
);
plat
->
cfg
.
name
=
dev
->
name
;
plat
->
cfg
.
host_caps
=
MMC_MODE_HS_52MHz
|
MMC_MODE_HS
;
...
...
drivers/mmc/tmio-common.c
浏览文件 @
d32519ac
...
...
@@ -783,7 +783,10 @@ int tmio_sd_probe(struct udevice *dev, u32 quirks)
plat
->
cfg
.
f_min
=
mclk
/
(
priv
->
caps
&
TMIO_SD_CAP_DIV1024
?
1024
:
512
);
plat
->
cfg
.
f_max
=
mclk
;
plat
->
cfg
.
b_max
=
U32_MAX
;
/* max value of TMIO_SD_SECCNT */
if
(
quirks
&
TMIO_SD_CAP_16BIT
)
plat
->
cfg
.
b_max
=
U16_MAX
;
/* max value of TMIO_SD_SECCNT */
else
plat
->
cfg
.
b_max
=
U32_MAX
;
/* max value of TMIO_SD_SECCNT */
upriv
->
mmc
=
&
plat
->
mmc
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录