/****************** boot kernel setup ******************************/
#define CONFIG_SETUP_MEMORY_TAGS 1
#define CONFIG_CMDLINE_TAG 1
#define CONFIG_BOOTARGS "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0"
#define CONFIG_BOOTCOMMAND "nand read 0x32000000 0x200000 0x300000; bootm 0x32000000"
在do_bootm_linux()会使用到,关于CONFIG_BOOTCOMMAND 的解释在《嵌入式学习笔记102-uboot_1.1.6移植(2)》有提及,现在解释一下CONFIG_BOOTARGS ,这个命令参数很多,不做过多解释,读者可以自行查看其他资料,只讲解该命令的参数,其中noinitrd 代表不用ramdisk文件系统,linux启动后会去挂载文件系统 由root=/dev/mtdblock2指定,所以这就要求到时porting kernel时注意分区与该参数是否匹配。init表示linux除main系统初始化后调用文件系统存储的第一个脚本。所以我们的文件系统根目录下要有linuxrc ,否则会挂了,不过也不是一定要先启动这个脚本,也可以是/etc下其他的。关于console有很多种设置,具体本人也不是很清楚,就使用常用设置 ttySAC0
原文地址:http://blog.csdn.net/fzk374470412/article/details/45950845