s3c2410开发日志——关于yaffs无法解压

来源:互联网 发布:手机要怎么录指纹 知乎 编辑:程序博客网 时间:2024/06/05 23:54

今天终于把yaffs挂载上去了~不容易啊~~记录一下。
原来出现的问题:
mount: Mounting /dev/mtdblock/1 on /mnt/yaffs failed: No such file or directory
然后能够进入根文件系统cramfs中,终端输出如下:
BusyBox v1.00 (2005.01.20-11:59+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

runing /etc/profile ok
[/mnt/yaffs]
然后按照指导书上的方法将yaffs.tar.bz2通过ftp上传到目标板中,解压,出现错误如下:
[~/tmp]tar -jvxf yaffs.tar.bz2 -C /mnt/yaffs
./ad
./ad/s3c2410-adc.o
tar: Cannot create directory `./ad': Operation not permitted
tar: ./ad/s3c2410-adc.o: No such file or directory
无法在/mnt/yaffs目录下进行任何操作。

原因分析:
vivi中有两种分区格式,bon和mtd,
bon分区用bon part命令来分区,内核在启动的是后在bon分区里查找内核,和根文件系统,但是如果想挂载

yaffs系统,就必须在bon分区中指定一个mtd分区,方法是在该分区后加一个:m,例如
bon part 0 128K 192K 1216K 6336K:m
这个命令就是将最后一个分区指定为mtd分区。
还有一点就是,part分区的时候为每个分区指定了名字,使用vivi下载的时候需要这个名字,因此,part分区中

kernel,root,的起止地址要相同,否则会出现根文件系统无法下载。

关于bon分区和mtd分区的具体区别还不清楚,目前只知道这样可以解决困扰了三天的问题。
2.6内核还是移植不上来,分区也已经改了,但是还是不行,网上的一个人说可能是内核的问题,下了一个

2.6.22,还没来的及试。
基本上就这样吧

原创粉丝点击