首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 驱动开发 >

u-boot-1.1.6 DM9000ep网卡ping不通解决思路

2012-03-19 
u-boot-1.1.6 DM9000ep网卡ping不通环境变量:u-boot # printbootargsroot/dev/mtdblock/2 init/linuxrc

u-boot-1.1.6 DM9000ep网卡ping不通
环境变量:
u-boot # print
bootargs=root=/dev/mtdblock/2 init=/linuxrc console=ttySAC0,115200
bootcmd=nand read 0x33000000 0x100000 0x300000; bootm 0x33000000
bootdelay=3
baudrate=115200
ethaddr=08:00:3e:26:0a:5b
ipaddr=192.168.2.9
serverip=192.168.2.30
netmask=255.255.255.0
stdin=serial
stdout=serial
stderr=serial

现在ping的时候网卡灯不亮,用抓包工具也没抓到包,用示波器测网卡芯片与网络变压器之间收发都有信号,网络变压器与RJ45之间也有信号。我打开了debug,ping包信息如下:
u-boot # ping 192.168.2.30
eth_halt
phy_write(reg:0, value:32768)
eth_init()
resetting
dm9000 i/o: 0x8000300, id: 0x90000a46
phy_read(3): 32768
MAC: 08:00:3e:26:0a:5b
08:00:3e:26:0a:5b:
sending ARP for 1e02a8c0
ARP broadcast 1
eth_send: length: 42

Send: 02x: ff ff ff ff ff ff 08 00
Send: 02x: 3e 26 0a 5b 08 06 00 01
Send: 02x: 08 00 06 04 00 01 08 00
Send: 02x: 3e 26 0a 5b c0 a8 02 09
Send: 02x: 00 00 00 00 00 00 c0 a8
Send: 02x: 02 1e
transmit done

ARP broadcast 2
eth_send: length: 42

Send: 02x: ff ff ff ff ff ff 08 00
Send: 02x: 3e 26 0a 5b 08 06 00 01
Send: 02x: 08 00 06 04 00 01 08 00
Send: 02x: 3e 26 0a 5b c0 a8 02 09
Send: 02x: 00 00 00 00 00 00 c0 a8
Send: 02x: 02 1e
transmit done

eth_halt
phy_write(reg:0, value:32768)
ping failed; host 192.168.2.30 is not alive
u-boot #

请问这可能是什么原因?


[解决办法]
友情帮顶下。

MARK.
[解决办法]
帮顶下,以前遇到过在Uboot就是你这种现象,但是在WINCE下却是正常的,希望你能得到正确的解答
[解决办法]
你现在是在目标机上ping主机吗? 能否在主机上ping目标机试试。或者换个交叉网线试试?
[解决办法]
可能是底层芯片对应答的解析不正确,这个发出的也不是PING而只是ARP请求,我搞网卡驱动时也遇到过这个问题
[解决办法]
再帮顶下。

期待解决。
[解决办法]
把我这些日子调试DM9000的经验告诉你把!最近项目也用DM9000EP,在北京中发买了几个芯片,焊完后就一个能用,把我给郁闷的,最后从原理图开始分析,没问题,再分析PCB布线,发现差分线没有走好,但是也不至于完全不通啊,连灯都不亮,还有就是起码有一个板子是好的啊!接着自己对这UBOOT写了个没有操作系统的DM90000的驱动,读VID和PID都没有问题,值为0X90000A46,这说明总线那块没有问题,接着写程序发现在UBOOT里的set_PHY_mode函数里的DM9000_iow(DM9000_GPCR, 0x01);/* Let GPIO0 output */和DM9000_iow(DM9000_GPR, 0x00);/* Enable PHY */之后就DM9000的PHY就应该起来了,插上路由器上的网口上测量RX和TX的时候应该是会有波形变化的,我的开发板就是这样没有问题,可我的板子死活不行,这我就彻底郁闷了!再次怀疑我的布线有问题,接着开始割线飞线折腾了好久好久还是不行,面对老板的催促我都无语了,最后我破釜沉舟把开发板上的DM9000EP拆下来焊我板子上,上电发现一切OK,OH MY GOD!该死的中发,该死的奸商!!我的问题就是这样,希望对你有帮助!!!

热点排行