电路板硬件是基于BBB改的,软件用的TI官方的SDK6.0(内核版本3.2.0)。
硬件上主要改了双网口(都是RGMII接口),PHY用的AR8033,驱动是从3.11的内核上复制过来改的,可以正常 编译。目前内核改了arch/arm/mach-omap2/board-am335xevm.c中的PINMUX和arch/arm/mach- omap2/devices.c中的PHY_ID。现在测试的现象是两个网口插上网线都会提示PHY:0:01-Link is Up,但 改了IP后都没办法ping通主机(一个网段内的),请问还有哪些地方需要修改或检测的?
yongqing wang:
是否已经配置为Dual EMAC模式了?
Shine:
请参考下面的wiki网站配置成dual emac模式。 processors.wiki.ti.com/…/AM335x_CPSW_(Ethernet)_Driver's_Guide双网口一般工作在不同的网段。
Both the interfaces should not be connected to the same subnet unless only configuring bridging, and not doing IP routing, then you can configure the two interfaces on the same subnet.
user4088306:
回复 yongqing wang:
kernel已经配置了Dual EMAC模式,还需要什么配置吗?
shixiong wu:
可以先不跑操作系统,接上JTAG仿真器,跑下网卡的测试代码,收发下数据是否正常,从而判断是硬件问题还是软件问题。还有一点,在uboot下面设置下环境变量,ping下电脑,看网络是不是alive的,也是一个办法。
user4088306:
回复 shixiong wu:
这款板子是从调好的板子上改的,所以没放JTAG,调uboot和调kernel的区别就不大了,uboot暂时不需要网络。
量了下硬件,TX_CLK和RX_CLK都是25MHz,但TX_EN和RX_EN都没有,系统查看ifconfig -a可以看到两块网卡RX bytes和TX bytes都有数值。
user4088306:
回复 Shine:
你好,文档里面的kernel config都配置过了。刚量了下硬件,TX_CLK和RX_CLK都是25MHz(应该是对应百兆网),但TX_EN和RX_EN都没有,系统查看ifconfig -a可以看到两块网卡RX bytes和TX bytes都有数值。不知道软硬件上还有什么可以监测的?
shixiong wu:
回复 user4088306:
uboot和内核对phy的初始化有不一样的地方,可以在uboot下面配置下环境变量,ping下网络。另外,你phy的复位信号是否正常?你以前调试好的板子和这个板子有无差异,这些都可以检查一下。
user4088306:
回复 shixiong wu:
你好,我表述的有问题,这次新做的板子换了PHY,然后从单网口改为双网口。
yongqing wang:
回复 user4088306:
表示最好有参考的板子上测试一下硬件的问题