码迷,mamicode.com
首页 > 其他好文 > 详细

嵌入式学习笔记104-uboot_1.1.6移植(4)

时间:2015-05-24 13:01:03      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:uboot   启动内核   tq2440   

  1. 前面的4篇uboot博文基本概括了uboot的整体flow,现在使能支持启动linux,至此之前请先阅读《嵌入式学习笔记200-Linux kernel初体验》和《嵌入式学习笔记201-Linux kernel动起来》。准备kernel的镜像文件才可以立马检测uboot是否能够启动kernel。在u-boot-1.1.6\include\configs\tq2440.h 最后添加如下几行code:
/******************  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

嵌入式学习笔记104-uboot_1.1.6移植(4)

标签:uboot   启动内核   tq2440   

原文地址:http://blog.csdn.net/fzk374470412/article/details/45950845

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!