免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 9621 | 回复: 9
打印 上一主题 下一主题

[网络子系统] drivers/net/phy目录下的通用驱动和某些PHY芯片的驱动如micrel.c是什么关系? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-07-23 20:26 来自手机 |只看该作者 |倒序浏览
linux drivers/net/phy目录下的通用驱动和某些PHY芯片的驱动如micrel.c是什么关系?

论坛徽章:
0
2 [报告]
发表于 2012-07-23 20:55 |只看该作者
没的关系,在没有专用phy的驱动的话,用通用的!

论坛徽章:
0
3 [报告]
发表于 2012-07-23 21:52 来自手机 |只看该作者
如果内核编译时勾选了use smsa phy,但实际使用的是phy芯片是micrel的,这时也使用通用的phy驱动,而编译进内核的smsc.c对网卡没有影响,对吗?

论坛徽章:
0
4 [报告]
发表于 2012-07-23 21:57 |只看该作者
回复 3# xidianunix


    对的,驱动会读出phy的型号等标识,会进行匹配,匹配不到自己对以的驱动,就会用通用的,其他驱动即使编译进内核但phy的标识判断不真确,也是不会匹配上的。

论坛徽章:
0
5 [报告]
发表于 2012-07-23 22:03 来自手机 |只看该作者
那为什么linux 2.6.34以后版本又加了micrel.c?用通用的就行了,为什么又加这个专用的?

论坛徽章:
0
6 [报告]
发表于 2012-07-23 22:09 |只看该作者
本帖最后由 tempnamett 于 2012-07-23 22:10 编辑

大部分phy都符合 标准协议,用通用的驱动就可以驱动起来,但有些phy不标准或者有些phy有高级的功能,而通用的phy驱动只支持标准phy协议规定的功能。回复 5# xidianunix


   

论坛徽章:
0
7 [报告]
发表于 2012-07-23 22:25 来自手机 |只看该作者
再请教一下,如果在正常使用中偶尔网络不通,ifconfig down/up后就好了,如何排查定位?

论坛徽章:
0
8 [报告]
发表于 2012-07-23 22:38 |只看该作者
看到你另一个帖子了。我想你首先确认下up和down这两个操作是否和mac层的驱动有什么关系(我想应该没什么太大的关系),从你的描述推断,和phy的状态关系比较大 ,你可以在正常的情况下把phy芯片所有的寄存器dump出来,出错后在dump出phy 的寄存器,做个对比,看看有没有异常。回复 7# xidianunix


   

论坛徽章:
0
9 [报告]
发表于 2012-07-23 23:06 来自手机 |只看该作者
除了写一个驱动测试程序dump phy寄存器外,有没有别的简单的手段?

论坛徽章:
0
10 [报告]
发表于 2013-01-04 09:14 |只看该作者
感谢tempnamett先生的精彩回答,受益匪浅。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP