基本常识 Linux系统基本启动流程: 1、 CPU从ROM(如果有的话)的0x0地址开始读取代码,执行loader; 2、 Loader初始化ram,从rom中拷贝uboot或kernel的镜像到ram的指定地址并执行; 3、 Uboot(如果有)拷贝kernel镜像和dtb文件到ram的指定地址 ...
分类:
系统相关 时间:
2016-10-21 13:05:19
阅读次数:
278
基本常识 一、 Linux系统的基本构成: 1、 loader 2、 kernel 3、 filesystem 二、 启动步骤: 1、 CPU从ROM(如果有的话)的0x0地址开始读取代码,执行loader; 2、 Loader初始化ram,并从rom中拷贝uboot或kernel的镜像到ram的指 ...
分类:
系统相关 时间:
2016-10-21 13:03:31
阅读次数:
346
前言 在编译xilinx的uboot的时候出现了一个问题,始终报错:“strip: Unable to recognise the format of the input file `gen_eth_addr'” 1 分析 一般对于编译链接命令出现这样的错误,都是因为目标文件和命令的编译环境不一样导 ...
分类:
其他好文 时间:
2016-10-21 07:43:59
阅读次数:
1222
编译的内核可能会很大,故这里可以压缩一下。而在内核文件中需要解压,所以就会有一段自解压代码。 在uboot启动内核的时候,调用了函数: thekernel(0,MACH_ID,params_addr ) 1. 首先处理uboot传入的参数。 获取处理器id,查看内核是否支持这个处理器。 获取uboo ...
分类:
系统相关 时间:
2016-10-20 15:06:21
阅读次数:
215
内核启动是需要必要的启动参数。不能开机自动完全从0开始启动,需要uboot帮助内核实现重定位并提供参数。 首先,uboo会从Kernel分区中读取bootcmd环境变量,根据环境变量可自动启动。 分区: 每个硬盘上都有一个分区表。由于Flash中没有分区表,所以Flash的分区只能在源代码中定义,故 ...
分类:
系统相关 时间:
2016-10-20 00:19:58
阅读次数:
187
获取u-boot源代码 在u-boot官方网站下载uboot源码。ftp://ftp.denx.de/pub/u-boot/ 这里我下载的是最新版 u-boot-2016.09.tar.bz2 解压文件到 /home/tiny4412下。 删减u-boot文件 删除u-boot源码中一些与移植目的不 ...
分类:
系统相关 时间:
2016-10-15 22:17:53
阅读次数:
250
转自:Uboot中start.S源码中指令级的详尽解析 green-waste为何 C 语言(的函数调用)需要堆栈,而汇编语言却需要堆栈之前看了很多关亍uboot的分析,其中就有说要为C语言的运行,准备好堆栈。而自己在Uboot的start.S汇编代码中,关于系统初始化,也看到有堆栈指针初始化这个动 ...
分类:
编程语言 时间:
2016-10-15 14:18:52
阅读次数:
194
1. Build uboot a) 安装好toolchain (arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz)并设置好 环境变量PATH,保证可以正常使用。 b) 解压 uboot_tiny4412-20130729.tgz 并进入相应的目录 tar xzf ubo ...
分类:
其他好文 时间:
2016-10-07 07:42:43
阅读次数:
245
参照:http://blog.csdn.net/girlkoo/article/details/45420977 文档参照: 《i.MX BSP Porting Guide-2015/12, Rev.0》 uboot porting steps 《E9_TQIMX6Q_V1_20131031.pdf ...
分类:
其他好文 时间:
2016-10-06 06:52:39
阅读次数:
511
我们现在正在做的包括以后做的裸机实验,是不涉及到bootloader和os的,整个裸机程序能运行的原理就是:我们把裸机程序当作是uboot的BL1,让iROM中的固化代码将其复制到内部的iRAM中运行。当选择usb启动的时候,由于不需要加头部信息,所以可以直接使用裸机程序,而选择sd/mmc通道启动 ...
分类:
其他好文 时间:
2016-10-02 14:54:51
阅读次数:
165