解决tftp挂载卡慢问题

移植了uboot之后,尝试着用tftp加载uImage和dtb到SDRAM,并启动,但是呢,可以加载,然而总是很慢而且打印很多报错信息

主要是

EHCI timed out on TD - token=0x8008d80

Rx:failed to receive:-5

一开始我以为是uboot中dm9601网卡驱动的问题,然后一直在研究跳转其时序参数(我以为是没初始化好),后来改了发现有一些效果,但是依然很慢。

直到今天,我用ubuntu20.04试着用tftp加载内核和dtb,才发现原来是tftp版本的问题。

我常用的是ubuntu12.04,因为一堆环境问题,没有用新的,连tftp装的也是基于xinetd网络管理的tftp,和tftp-server。

用这个版本的tftp,同uboot的tftp进行加载内核和dtb就会产生如上图的报错(虽然还是会加载成功,能成功启动,但是很慢而且一堆报错打印信息)

下面卸载掉这个版本的tftp,并且下载另一版本的tftp,再重新配置网络就行了。

卸载tftp:

apt-get autoremove tftp

apt-get autoremove tftpd

apt-get autoremove xinetd

安装新tftp:

sudo apt-get install tftpd-hpa

sudo apt-get install tftp-hpa

配置tftp:

sudo vim /etc/default/tftpd-hpa

按如下配置

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/tftpboot/"#这个是tftp服务端目录
TFTP_ADDRESS=":69"
TFTP_OPTIONS="-l -c -s"

配置新tftp参考:Linux 安装配置 tftp 服务器 - 浇筑菜鸟 - 博客园 (cnblogs.com)

给予tftp服务端目录权限:

chmod 777 /var/tftpboot/

重启tftp:

sudo service tftpd-hpa restart

做到这一步可以尝试用tftp测试了 :

tftp 127.0.0.1 #连接服务器
get a.txt #获取a.txt
put b.txt #上传b.txt
q #断开连接

如果还不行,那就是需要再配置一遍网络,再重复上面的操作

1.删除所有网络设置:

rm -rf /etc/NetworkManager /system-connections/*

2.重启网络服务:

service network-manager restart

3.设置默认网络配置

dpkg-reconfigure network-manager

接下来就可以看到,uboot使用tftp加载uImage和dtb文件很快了!基本没有延迟,也没有报错打印。

完.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值