UBoot中使用tftp下载文件出现错误TFTP error: 'Access violation' (2)的解决办法

问题:

利用mkyaffs2image root-combo-422 rootfs-combo.yaffs2制作好根文件系统rootfs-combo.yaffs2,将rootfs-combo.yaffs2拷贝到主机服务器的tftp目录;

然后,在U-Boot中将根文件系统加载到内存的时候出现如下错误:

DingQing> tftp 22000000 rootfs-combo.yaffs2
macb0: link up, 100Mbps full-duplex (lpa: 0x45e1)
Using macb0 device
TFTP from server 192.168.1.200; our IP address is 192.168.1.244
Filename 'rootfs-combo.yaffs2'.
Load address: 0x22000000
Loading: *
TFTP error: 'Access violation' (2)
Starting again
但是以前制作好的根文件系统下载没有问题。


解决办法:

1. 确认了制作工具mkyaffs2image是用的跟以前相同的工具,逐字节比较过了;

2. 从错误的种类,TFTP error: 'Access violation' (2),猜想可能是存取权限的问题;

3. 到/tftpboot中查看rootfs-combo.yaffs2的属性,果然是600,不知道为什么mkyaffs2image会生成属性为600的文件;

4. 将rootfs-combo.yaffs2的属性改为666,在U-Boot中可以正常加载根文件系统到内存了。


问题解决。



原文地址:https://www.cnblogs.com/java20130726/p/3218538.html