uboot
之由
这个作者很懒,什么都没留下…
展开
-
U-Boot启动过程--详细版的完全分析
------------------------------------------------------------------------------------------------------------------------------------------- 我们知道,bootloader是系统上电后最初加载运行的代码。它提供了处理器上电复位后最开始需要执行的初始化代码转载 2013-02-19 16:00:06 · 2704 阅读 · 0 评论 -
U-Boot启动过程完全分析
1.1 U-Boot工作过程 U-Boot启动内核的过程可以分为两个阶段,两个阶段的功能如下: (1)第一阶段的功能Ø 硬件设备初始化Ø 加载U-Boot第二阶段代码到RAM空间Ø 设置好栈Ø 跳转到第二阶段代码入口 (2)第二阶段的功能Ø 初始化本阶段使用的硬件设备Ø 检测系统内存映射Ø 将内核从Fla转载 2014-04-08 15:07:22 · 4728 阅读 · 0 评论 -
Uncompressing Linux..... done, booting the kernel.
内核启动卡在Uncompressing Linux..... done, booting the kernel.这好像是个老生常谈的问题了。成因在网上也罗列了很多种,可这次我碰到的,却没百度出解决方法,纠结了我很久才解决。我先把造成Uncompressing Linux..... done, booting the kernel.的常见的几种可能再罗列一下1、机器码不匹配解转载 2013-02-21 10:58:55 · 1062 阅读 · 0 评论 -
uboot第一阶段详细分析
uboot第一阶段详细分析作者:程姚根uboot的第一阶段设计的非常巧妙,几乎都是用汇编语言实现的,下面我们一起来看看它的精妙之处吧!首先我们来看一下它的链接脚本,通过它我们可以知道它整个程序的各个段是怎么存放的。OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")转载 2013-02-21 10:58:18 · 877 阅读 · 0 评论 -
基于mips架构的uboot启动流程(4)
1. 引言文章是2年前移植u-boot时候分析的,u-boot方面文章比较多,但是mips方面的稍微少一点,因此贴上来就当资料搜集贴吧.1.1. 参考资料詹荣开 原作者未考证 2. 需求分析Bootloader 在嵌入式系统中一般起硬件初始化和内核引导的作用,在产品中使用的Bootloader只要保证基本的功能和引导速度即可, 而作为开发使用的B转载 2013-02-21 10:57:29 · 1196 阅读 · 0 评论 -
基于mips架构的uboot启动流程(3)
要注意mips具有流水线可见性,所以跟在跳转指令后的下一条指令,在执行跳转到的地方前,都会执行,这个叫分支延迟。但是编译器会隐藏该特性,但可以通过设置”.set noreorder”来禁止编译器重新组织代码顺序。每个板子都有自己的lds文件。这个主要是用来说明编译生成的指令,及运行过程中用到的数据放置的位置。这个可以参考ld的手册。比如board/dbau1x00/u-boot.lds。转载 2013-02-21 10:57:00 · 915 阅读 · 0 评论 -
基于mips架构的uboot 启动流程 (2)
对于计算机系统来说,从开机上电到操作系统启动需要一个引导过程,这个引导程序就叫作 Bootloader 。 Bootloader 是在操作系统运行之前执行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射表,从而建立适当的系统软硬件环境,为最终调用操作系统内核做好准备。 对于嵌入式系统, Bootloader 是基于特定硬件平台来实现的。因此,转载 2013-02-21 10:56:25 · 951 阅读 · 0 评论 -
基于mips架构的uboot 启动流程 (1)
流程分析***************************************************1.最开始系统上电后ENTRY(_start)程序入口点是 _start board/mingddie/u-boot.lds2._start: cpu/mips/start.S3. la t9, board_init_f 将函数board_init_f地址赋予t转载 2013-02-21 10:54:26 · 1383 阅读 · 0 评论 -
U-boot在开发板上移植过程详解--bootloader架构分析
http://www.cnblogs.com/hanyan225/archive/2011/05/23/2054076.html 本例中采用的同样是前边一贯的实验板,这里就不对板子资源做进一步介绍了。 我们知道,bootloader是系统上电后最初加载运行的代码。它提供了处理器上电复位后最开始需要执行的初始化代码。在PC机上引导程序一般由BIOS开始执行,然后读取硬盘中位于M转载 2013-02-19 16:07:31 · 1116 阅读 · 0 评论 -
U-boot启动内核原理
U-boot启动内核原理 ARM平台U-boot启动内核命令如:bootcmd=bootm 0xc4040014 在./common/cmd_bootm.c文件中,bootm命令对应的do_bootm函数,当分析uImage中信息发现OS是Linux时,调用./lib_arm/armlinux.c文件中转载 2013-02-19 16:06:06 · 1169 阅读 · 0 评论 -
linux内存管理之uboot第一步
在进入讲解linux内存管理的kernel阶段以前,了解一下uboot阶段是如何准备好内存物理设备的,这是非常有意义的。通常进入到linux内核阶段之后,对内存芯片的物理特性寄存器访问是比较少的,强调的是linux在管理上的用法,而大部分必要工作由uboot阶段进行处理,如打开内存功能,配置内存,初始化内存设备,获得内存基本信息等。 下面以笔记的形式讲述调试uboot内存的方法,分别以A转载 2013-02-19 16:03:42 · 1684 阅读 · 0 评论 -
U-Boot编译过程完全分析
2.1 U-Boot Makefile分析2.1.1 U-Boot编译命令 对于mini2440开发板,编译U-Boot需要执行如下的命令:$ make mini2440_config$ make all 使用上面的命令编译U-Boot,编译生成的所有文件都保存在源代码目录中。为了保持源代码目录的干净,可以使用转载 2014-04-08 15:05:40 · 5120 阅读 · 0 评论