最主要的是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的大小分配.