Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xiphi1978
linux
提交
7aa6a478
L
linux
项目概览
xiphi1978
/
linux
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7aa6a478
编写于
5月 04, 2009
作者:
K
Krzysztof Hałasa
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
IXP4xx: complete Ethernet netdev setup before calling register_netdev().
Signed-off-by:
N
Krzysztof Hałasa
<
khc@pm.waw.pl
>
上级
3ba8c792
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
12 deletion
+13
-12
drivers/net/arm/ixp4xx_eth.c
drivers/net/arm/ixp4xx_eth.c
+13
-12
未找到文件。
drivers/net/arm/ixp4xx_eth.c
浏览文件 @
7aa6a478
...
...
@@ -1189,15 +1189,10 @@ static int __devinit eth_init_one(struct platform_device *pdev)
goto
err_free
;
}
if
(
register_netdev
(
dev
))
{
err
=
-
EIO
;
goto
err_npe_rel
;
}
port
->
mem_res
=
request_mem_region
(
regs_phys
,
REGS_SIZE
,
dev
->
name
);
if
(
!
port
->
mem_res
)
{
err
=
-
EBUSY
;
goto
err_
unreg
;
goto
err_
npe_rel
;
}
port
->
plat
=
plat
;
...
...
@@ -1215,20 +1210,25 @@ static int __devinit eth_init_one(struct platform_device *pdev)
snprintf
(
phy_id
,
BUS_ID_SIZE
,
PHY_ID_FMT
,
"0"
,
plat
->
phy
);
port
->
phydev
=
phy_connect
(
dev
,
phy_id
,
&
ixp4xx_adjust_link
,
0
,
PHY_INTERFACE_MODE_MII
);
if
(
IS_ERR
(
port
->
phydev
))
{
printk
(
KERN_ERR
"%s: Could not attach to PHY
\n
"
,
dev
->
name
);
return
PTR_ERR
(
port
->
phydev
);
}
if
((
err
=
IS_ERR
(
port
->
phydev
)))
goto
err_free_mem
;
port
->
phydev
->
irq
=
PHY_POLL
;
if
((
err
=
register_netdev
(
dev
)))
goto
err_phy_dis
;
printk
(
KERN_INFO
"%s: MII PHY %i on %s
\n
"
,
dev
->
name
,
plat
->
phy
,
npe_name
(
port
->
npe
));
return
0
;
err_unreg:
unregister_netdev
(
dev
);
err_phy_dis:
phy_disconnect
(
port
->
phydev
);
err_free_mem:
npe_port_tab
[
NPE_ID
(
port
->
id
)]
=
NULL
;
platform_set_drvdata
(
pdev
,
NULL
);
release_resource
(
port
->
mem_res
);
err_npe_rel:
npe_release
(
port
->
npe
);
err_free:
...
...
@@ -1242,6 +1242,7 @@ static int __devexit eth_remove_one(struct platform_device *pdev)
struct
port
*
port
=
netdev_priv
(
dev
);
unregister_netdev
(
dev
);
phy_disconnect
(
port
->
phydev
);
npe_port_tab
[
NPE_ID
(
port
->
id
)]
=
NULL
;
platform_set_drvdata
(
pdev
,
NULL
);
npe_release
(
port
->
npe
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录