2021-08-24

本文记录了一名工程师在全志T507 soc上初次调试Android以太网PHY芯片LAN8720A的过程。通过解决时钟源问题和PHY配置,最终实现MAC与PHY的通信,并调整硬件参数解决LED显示异常,成功完成驱动调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

            全志T507+LAN8720A以太网调试

第一次在全志T507上调试Android以太网PHY没有任何经验,soc和PHY都是一片渺茫,没办法公司没人搞这个只能撸起袖子开干。
开始调试是PHY芯片 LAN8720A的时钟由外部50MHZ晶振提供。所以没有开启T5输出的25MHZ的时钟,这样的结果就是T5 EMAC的复位标志一直不成功。
看T507的规格书根本看不出啥原因,百度也是无果百度上stm32f4**+LAN8720A的例子不少,下载后看了其实也没发现啥有用信息,为了在CSNDN上下载历程花了几百块买了2年的会员。

没办法后又听客户的硬件工程师说imx6上LAN8720A的时钟要用soc的25MHZ 来提供不然时钟不同步,那接下来就这样条线改啊。无语的是这样断开了晶振给T5的RMII_TXCK,然后打开T5的EPHY_25M,结果并没有啥变化依然是T5 EMAC的复位标志一直不成功。

搞不定了,只能像原厂求助,原厂就说可能是clk没有给,T5的mac都没正常工作那里来的clk。那没办法就又把50MHZ的晶振接上。
还没来得急关闭T5的EPHY_25M就直接上电测试这下MAC复位成功了,代码跑下去了。
然后又关闭T5的EPHY_25M结果烧录后又回到了开始的状态,可谓一招不胜回到解放前。还好算是把问题解决了,其实还是不知道这个是全志的坑还是照理说T507是有这个能力来输出这个25M的,估计是一定要有RMII_TXCK全志的GMAC才能工作(可以研究下EPHY_25M怎样可以出来这样的话就可以少用一颗外部晶振了),而且看规格书上面就有gmacxx25M的时钟是由600M的pll分频而来的,时间不多先不去细究问题解决就好(利益至上)。
上个图在这里插入图片描述

这样一来SOC端的问题就算是告于段落拉,mac端没有问题了接着继续调试PHY。
调试芯片少不了要看规格书啊,嵌入式软件工程师来看复杂点的规格书还是有点小累的。过程就不细说了直接来说结果了,LAN8720A的LED2/nINTSET和LED1/REGOFF 两个配置脚用来配置50M和25M晶振,内部/外部1.2V电压。然后就ping通了。log如下:
在这里插入图片描述

到这时基本是通了,但两个灯同时闪同时灭,闪的状态和电脑上的不太一样,而且log里面有一些link Down和link up的日志,看LAN8720的规格书VDDCR应该是1.2V才对,此时一量居然是1.8V,这是就吧锅甩给硬件了,客户硬件发现把LAN8720A的RBIAS脚对地的电阻由33R改为12.1K,然后灯闪的状态和电脑就一样了。log如下。在这里插入图片描述
到此处不做深究的T507上LAN8720A的驱动就调试完成了.

链接: link.
l:Alt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值