FL2400--YAFFS2文件系统移植(三)

配置完内核以后,接下来就是弄根文件系统了.

根文件的制作可以参考伟大的福林兄的博客: http://blog.csdn.net/fulinus/article/details/9005258

根文件制作完成后,就是最复杂困难的制作YAFFS2文件系统的工具了. 在yaffs2源码utils 目录下make一下会出现mkyaffsimage和mkyaffs2image两个文件,这两个文件就是制作

YAFFS2文件系统的工具. mkyaffsimage 支持64M NANDFLASH, mkyaffs2image支持128M 及 以上 NANDFLASH. 但是源码下make出来的是没经过修改了. 不能支持.目前使用

的是友善之臂提供的mkyaffs2image工具..想了解怎么修改和相关内核可以参考一下博客: 

http://blog.csdn.net/liukun321/article/category/857081 

http://blog.chinaunix.net/uid-20543672-id-94384.html 

我在utils目录下make的时候出现了 u8 这个东东没有定义的错误.. 具体的作法就是跑到 yportenv.h 文件下把定义u8 上面的 #if define .... 什么的去掉就好(具体是什么我忘记了)

虽然这里无关重要.但是这是我移植过程中遇到的问题,所以要说下.

将用友善之臂提供的mkyaffs2image,cp到 linux 的 /bin目录和 /usr/sbin 目录下, 就可以使用mkyaffs2image 命令了, 然后就是 mkyaffs2image rootfs/  rootfs.bin, rootfs.bin文件

就是我们要烧录的文件系统了.至此文件系统制作完毕.可以高高兴兴拿去烧了哟....

接下来就是烧写了...

这里我把我的uboot环境变量贴出来:

bbl=nand erase 0 50000;tftp 30008000 u-boot-$cpu.bin;nand write 30008000 0 50000

bkr=tftp 30008000 linuxrom-s3c2440.bin;nand erase 100000 300000;nand write 30008000 100000 300000

bootargs=noinitrd root=/dev/mtdblock4 rootfstype=yaffs2 init=/linuxrc console=ttyS0,115200

bootcmd_yaffs2=nand read 30008000 100000 300000;nand read 30800000 1a00000 800000;bootm 30008000

bootcmd=run bootcmd_yaffs2

内核分区:

Creating 5 MTD partitions on "NAND":
0x000000000000-0x000000100000 : "mtdblock0 u-boot 1MB"
0x000000100000-0x000000600000 : "mtdblock1 kernel 5MB"
0x000000600000-0x000001000000 : "mtdblock2 ramdisk 10MB"
0x000001000000-0x000001a00000 : "mtdblock3 cramfs 10MB"
0x000001a00000-0x000002e00000 : "mtdblock4 yaffs2 20MB"

下载文件系统的命令要跟分区对应....

不然会出现问题.具体出现的问题,以下在列出.

这里只写烧写yaffs2文件系统的命令..  tftp 30800000 rootfs,bin; nand erase 1a00000 $filesize; nand  write.yaffs2  30800000 1a00000 $filesize   (filesize是rootfs.bin的大小)

如果按以上步骤你能看到以下信息:

s3c-rtc s3c2410-rtc: setting system clock to 2011-04-20 17:14:42 UTC (1303319682)
yaffs: dev is 32505860 name is "mtdblock4" rw
yaffs: passed flags ""
VFS: Mounted root (yaffs2 filesystem) on device 31:4.
Freeing init memory: 144K
usb 1-1: new full speed USB device number 2 using s3c2410-ohci
usb 1-1: New USB device found, idVendor=05e3, idProduct=0606
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1: Product: USB Hub 2.0
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
dm9000 dm9000.0: eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1


Copyright (C) 2013 Yanshifu<yanshifu@gmail.com>
root login: 

那么恭喜你...你成功了.如果不是的话,那你就有可能和我犯了一些一样的错误了.. 见下篇...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值