根文件系统rootfs制作成yaffs2烧写到nand上

最主要的是kernel启动时的参数,这部分参数

bootcmd_args=setenv bootcmd_args setenv bootargs console=${console} mem=${mem} root=/dev/mtdblock2 rw noinitrd rootfstype=yaffs2 init=/sbin/init ${nandcfg} ${mtdparts}

上面的配置也可以临时在uboot启动中先测试一下,成功后再修改对应的源码文件。
如果是在uboot的命令中测试,则需要用如下的命令:

setenv bootcmd_args setenv bootcmd_args setenv bootargs console=${console} mem=${mem} root=/dev/mtdblock2 rw noinitrd rootfstype=yaffs2 init=/sbin/init ${nandcfg} ${mtdparts}

从uboot启动kernel

run bootcmd

主要参数的作用:

root=/dev/mtdblock2 rw

用来指定rootfs所在的分区,此示例中,我们把rootfs.yaffs2烧写到/dev/mtdblock2分区上。如果是放在其他分区上,在此处注明。
rw 表示可读可写

rootfstype=yaffs2

用来指明镜像的类型

init=/sbin/init

用来指定内核初始化后将要运行的首个应用程序,其实对应与嵌入式系统来说/sbin/init就是指向busybox的符号链接。

noinitrd

如果没有使用ramdisk,则需要使用此选项标明。

${nandcfg}和${mtdpargs}是nand的大小分配.

猜你喜欢

转载自blog.csdn.net/k7arm/article/details/97611955