Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
7c2fde9b
cloud-kernel
项目概览
openanolis
/
cloud-kernel
接近 2 年 前同步成功
通知
169
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
7c2fde9b
编写于
9月 01, 2013
作者:
M
Mark Brown
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'spi/topic/mxs' into spi-next
上级
9020b754
29f0d488
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
15 deletion
+13
-15
drivers/spi/spi-mxs.c
drivers/spi/spi-mxs.c
+13
-15
未找到文件。
drivers/spi/spi-mxs.c
浏览文件 @
7c2fde9b
...
...
@@ -67,13 +67,8 @@ static int mxs_spi_setup_transfer(struct spi_device *dev,
{
struct
mxs_spi
*
spi
=
spi_master_get_devdata
(
dev
->
master
);
struct
mxs_ssp
*
ssp
=
&
spi
->
ssp
;
uint8_t
bits_per_word
;
uint32_t
hz
=
0
;
bits_per_word
=
dev
->
bits_per_word
;
if
(
t
&&
t
->
bits_per_word
)
bits_per_word
=
t
->
bits_per_word
;
hz
=
dev
->
max_speed_hz
;
if
(
t
&&
t
->
speed_hz
)
hz
=
min
(
hz
,
t
->
speed_hz
);
...
...
@@ -513,7 +508,7 @@ static int mxs_spi_probe(struct platform_device *pdev)
iores
=
platform_get_resource
(
pdev
,
IORESOURCE_MEM
,
0
);
irq_err
=
platform_get_irq
(
pdev
,
0
);
if
(
!
iores
||
irq_err
<
0
)
if
(
irq_err
<
0
)
return
-
EINVAL
;
base
=
devm_ioremap_resource
(
&
pdev
->
dev
,
iores
);
...
...
@@ -563,25 +558,31 @@ static int mxs_spi_probe(struct platform_device *pdev)
goto
out_master_free
;
}
clk_prepare_enable
(
ssp
->
clk
);
ret
=
clk_prepare_enable
(
ssp
->
clk
);
if
(
ret
)
goto
out_dma_release
;
clk_set_rate
(
ssp
->
clk
,
clk_freq
);
ssp
->
clk_rate
=
clk_get_rate
(
ssp
->
clk
)
/
1000
;
stmp_reset_block
(
ssp
->
base
);
ret
=
stmp_reset_block
(
ssp
->
base
);
if
(
ret
)
goto
out_disable_clk
;
platform_set_drvdata
(
pdev
,
master
);
ret
=
spi_register_master
(
master
);
if
(
ret
)
{
dev_err
(
&
pdev
->
dev
,
"Cannot register SPI master, %d
\n
"
,
ret
);
goto
out_
free_dma
;
goto
out_
disable_clk
;
}
return
0
;
out_free_dma:
dma_release_channel
(
ssp
->
dmach
);
out_disable_clk:
clk_disable_unprepare
(
ssp
->
clk
);
out_dma_release:
dma_release_channel
(
ssp
->
dmach
);
out_master_free:
spi_master_put
(
master
);
return
ret
;
...
...
@@ -598,11 +599,8 @@ static int mxs_spi_remove(struct platform_device *pdev)
ssp
=
&
spi
->
ssp
;
spi_unregister_master
(
master
);
dma_release_channel
(
ssp
->
dmach
);
clk_disable_unprepare
(
ssp
->
clk
);
dma_release_channel
(
ssp
->
dmach
);
spi_master_put
(
master
);
return
0
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录