各位好,
我用的是DVSDK 2的环境。
在ubuntu上面搭建了NFS环境,并且编译了内核。在TI官方的DVEVM6467一切正常。
现在买了块板子(网络芯片和dvevm一样的,软件是基于DVSDK1.4环境的,包括uimage。但我想直接集成到我DVSDK2开发的项目上。
使用烧到nand里的内核,提示kernel版本过低,NFS版本过高。这是因为DVSDK2的内核是2.6.18,而dvsdk1.4的是2.6.10.
后来用tftp方式下载基于DVSDK2.0编的内核,搭载基于DVSDK2的NFS。
现在问题是:
tftp下载没问题,说明硬件ok。但是解压linux内核后,无法连接到NFS 服务器。无论是dhcp方式,还是固定ip方式。
两种方式通过抓包软件,都能发现板子发送的dhcp请求或者arp请求 都能够到达nfs服务器。
而且nfs也返回了dhcp地址,或者告诉板子自己的mac地址。
但是板子一直没有回应。不知道是没接收到还是接收到了没有正确处理。
硬件肯定没问题,所以我判断硬件接收到了。
后来怀疑是不是uboot版本问题,但是烧了dvsdk2.0里面psp自带的uboot后,还是一样的问题。
所以现在无奈了,不知道是不是linux 网络驱动这里的问题? 但是一样的软件在dvevm6467上就是好的。
多谢。
kooking:
这个和u-boot版本应该没什么关系。
其它模块如果init出错,也可能导致挂载不上nfs,所以我建议:
1.编译DVSDK2下内核,menuconfig把串口,网络,文件系统这些模式支持,其它一些接口的可以先不编译进去,看一下会不会有改善
2.制作一个文件系统镜像,在u-boot下把DVSDK2下内核和制作的文件系统镜像烧写到nand上,启动后可以测试网络
Vincent Sang:
回复 kooking:
非常感谢回复。
1. 我应该已经把这些模式都支持了。具体请看下附件中的config
另外附件中的wireshark就是出错的时候,板子一直发arp请求,服务器也响应了,但是板子就是一直没有正确接收。
2. 我回去实验一下。
Vincent Sang:
回复 kooking:
wireshark截图在这里。
谢谢
kooking:
回复 Vincent Sang:
1.尽量减少模块的支持,保留一些必须的,如串口,网络,像其它的,比如usb,lcd之类的可以先去掉,这样可以测试下是不是其它模块产生了影响
lixiao yan:
回复 Vincent Sang:
请问您这个问题解决了吗,我也遇见这个问题了,求您帮助一下
Vincent Sang:
回复 lixiao yan:
mac 地址在flash里面写错了。
lixiao yan:
回复 Vincent Sang:
是uboot中的MAC地址吗?还是内核初始化中用到的MAC,能详细的说明一下吗,我是新手,谢谢
kooking:
回复 Vincent Sang:
Vincent Sang
mac地址在flash里面写错了,后来查看了下网络包的mac地址,把正确的写进去就好了。
Vincent Sang:
回复 kooking:
是