Uboot
conceptcon
这个作者很懒,什么都没留下…
展开
-
u-boot源码配置原理分析
u-boot的源代码默认是不针对任何目标平台的,当我们要移植u-boot到一个特定的目标平台时,需要生成针对目标平台的配置文件。u-boot目前已经支持的芯片可以在include/configs/下面找到。比如我们要编译针对s3c2410芯片的u-boot.bin,那么我们就需要在u-boot源码根路径下执行:make smdk2410_config这样我们的u-boot源码就是针转载 2012-10-18 14:17:52 · 1141 阅读 · 0 评论 -
BOOTM浅析
原文:http://hi.baidu.com/chenenzhi/blog/item/1a6eaf54b7115a143b293588.html与boom命令实现有关的源文件主要为common/cmd_bootm.c和lib_arm/armlinux.c。下面就这两个文件中的关键代码段进行分析。 common/cmd_bootm.c(前面数字为SourceInsight中显转载 2012-10-18 14:21:21 · 706 阅读 · 0 评论 -
Boot Loader分析
在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次:1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader 两大部分。2. Linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。 3. 文件系统。包括根文件系统和建立于 Flash 内存设转载 2012-11-07 16:26:31 · 691 阅读 · 0 评论 -
ARM汇编中关于“.word”伪指令的概念
在u-boot源码时遇到_armboot_start、_bss_start等这些变量,不知道指向什么地址,于是查了一下,弄清了ARM汇编中“.word”这个伪指令是什么意思了,感觉自己很菜。借鉴一下网友帖子的内容,关键在帖子最后的总结: 汇编和C引用变量的不同:汇编是“绝对”引用,即没有指针的概念,引用得到的就是值;c语言是“间接”引用,相当于指针的概念,引用地址变量,得到的就是该变量所指的内容值转载 2012-11-13 10:23:26 · 1065 阅读 · 0 评论 -
Linux内核启动流程分析
S3C2410 Linux 2.6.35.7启动分析(第一阶段)arm linux 内核生成过程 1. 依据arch/arm/kernel/vmlinux.lds 生成linux内核源码根目录下的vmlinux,这个vmlinux属于未压缩,带调试信息、符号表的最初的内核,大小约23MB; 命令:arm-linux-gnu-ld -o vmlinux -T arch/arm/k转载 2012-10-22 18:02:20 · 1608 阅读 · 0 评论 -
bootargs参数意义
U-boot的环境变量值得注意的有两个: bootcmd 和bootargs。u-bootcmd 前面有说过bootcmd是自动启动时默认执行的一些命令,因此你可以在当前环境中定义各种不同配置,不同环境的参数设置,然后设置bootcmd为你经常使用的那种参数。u-bootargs bootargs是环境变量中的重中之重,甚至可以说整个环境变量都是围绕着bootargs来设转载 2012-10-18 14:22:46 · 1601 阅读 · 0 评论 -
arm-linux-ld命令
我们对每个c或者汇编文件进行单独编译,但是不去连接,生成很多.o 的文件,这些.o文件首先是分散的,我们首先要考虑的如何组合起来;其次,这些.o文件存在相互调用的关系;再者,我们最后生成的bin文件是要在硬件中运行的,每一部分放在什么地址都要有仔细的说明。我觉得在写makefile的时候,最为重要的就是ld的理解,下面说说我的经验: 首先,要确定我们的程序用没有用到标准的c库,或者一些系统转载 2013-01-04 19:44:23 · 815 阅读 · 0 评论 -
理一下uboot的nand操作相关
一、linux MTD驱动层次简介,from:http://www.cnblogs.com/hoys/archive/2012/05/30/2526230.htmlMTD(memory technology device内存技术设备)是用于访问memory设备(ROM、flash)的Linux的子系统。MTD的主要目的是为了使新的memory设备的驱 动更加简单,为此它在硬件和上层之间提供了一原创 2013-12-20 12:04:09 · 1842 阅读 · 0 评论