2 配置control register使能自动协商能慧衫力(AN)
3 配置寄存器9,配置1000BASE-T()根据实际需要配置)自动饥纯协商的能力通告寄存器
4 配置ANAR,配置100BASE和10BASE自动协商的能力通告寄存器
5 重新启动自动协商
其实还应该有第六步那就是等待自动协商完成:不断查询status register bit5是烂碧咐否为1
linux系统起来了,但是phy却起不来的原因Linux1024
深耕嵌入式行业多年,从事过智能家居设计,分享产品和技术
一个系统两种现象说明了什么?最近在做开发任务的时候,遇到这么一个问题
,根文件系统、uboot、内核都是一样的,但是电路板改版之后却出现了问题,系统跑起来了,但是网络却起不来。
这个问题确实让人有点手足无措,刚开始身边的中华第一烙铁手也很自信,电路不斗举应该出现问题,而且电路也有了优化,应该来说是更加的稳定才对。然而事与愿违,最担心的网络还是起不来。
与之前不一样的是,之前phy起不来的时候是找不到phy芯片,系统起不来;但是这次phy找到了,也识别了地址,系统起来了,网络却还不行,通过串口打印出来的如下薯销野:
最刚开始先是外部引脚的信号,还有MDC/MDIO等时钟和数据,似乎也没发现问题。串口查看启动信息,是这样的:
网上一搜,说是恢复默环境变量,执行env default -a 然后保存就可以了,执行一次复位确实警告消失了,但是等系统起来了,再次复位还是会出现警告。又再仔细看了会,地址没设,又设了地址,没有报任何错,但是启动之后网络依然没有起来。
通过多方引线测试,最终还是定位到硬件上,因为焊接的地方跟自己这边也比较远,而且之前都是使用专焊的,想不到还真不够专业,第一块板子发现的是phy片接地没有接好,焊回来了,但是通讯数喊出现严重的丢包。还是没有完全好,后面把板子拿去重新把phy芯片焊过,现在就能够完全起来了,网络正常。
回想起来用工具下载的软件之前的板子都能够起来,而这几个新板子起不来,很大程度上是硬件出现了问题。因为以太网的各个引脚都没有改变,也无需重新配置。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)