当前位置:首页 > 单片机 > 单片机
[导读] 虽然网上有无数的分析,但是还是觉得有必要自己分析一遍Uboot在编译的时候通常需要两步:make EmbedSky_configmake all1.下面就分析一下执行 make EmbedSky_config后发生了什么在Makefile中有如下EmbedS

虽然网上有无数的分析,但是还是觉得有必要自己分析一遍
Uboot在编译的时候通常需要两步:
make EmbedSky_config
make all
1.下面就分析一下执行 make EmbedSky_config后发生了什么
在Makefile中有如下

  1. EmbedSky_config:unconfig

  2. @$(MKCONFIG)$(@:_config=)arm arm920t EmbedSkyNULLs3c24x0

1.1 unconfig:

  1. @rm-f include/config.h include/config.mk


  2. board/*/config.tmp board/*/*/config.tmp

unconfig 非常简单 删除几个文件,删除的这几个文件是在下面的mkconfig 中生成的
1.2 @$(MKCONFIG) $(@:_config=) arm arm920t EmbedSky NULL s3c24x0

  1. MKCONFIG:=$(SRCTREE)/mkconfig


  2. export MKCONFIG


  3. 所以 $(MKCONFIG)就是当前目录下的mkconfig脚本


  4. $(@:_config=)去掉EmbedSky_config中的_config,


  5. EmbedSky_config:unconfig


  6. ./mkconfig EmbedSky arm arm920t EmbedSkyNULLs3c24x0


  7. $0 $1 $2 $3 $4 $5 $6

1.3 然后再来分析一下执行了:
./mkconfig EmbedSky arm arm920t EmbedSky NULL s3c24x0 后做了什么

  1. rm-f include/asm


  2. ln-s include/asm-arm include/asm



  3. rm-f asm-arm/proc


  4. ln-s proc-armv asm-arm/proc



  5. rm-f asm-arm/arch


  6. ln-s arch-s3c24x0 asm-arm/arch

将如下写入include/config.mk
ARCH = arm
CPU = arm920t
BOARD = EmbedSky
SOC = s3c24x0
将如下写入include/config.h
#include

mkconfig主要做了两件事,创建符号链接,并创建config.mk 和 config.h 文件。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

同大多数的Bootloader一样,uboot的启动过程也分为BL1、BL2两个阶段,分别对应着SPL和Uboot。

关键字: Bootloader uboot SPL

为什么要有uboot?它能解决哪些问题?

关键字: uboot 计算机 嵌入式

一、为什么要有uboot 1.1、计算机系统的主要部件 (1)计算机系统就是以CPU为核心来运行的系统。典型的计算机系统有:PC机(台式机+笔记本)、嵌入式设备(手机、平板电脑、游戏机)、单片机(家用电器像电饭锅、空调)...

关键字: uboot

我们从u-boot启动内核可知道,uboot通过这条命令theKernel (0, bd->bi_arch_number, bd->bi_boot_params);来启动内核。那么我们可以

关键字: uboot linux内核启动流程 内核启动

开始start.s分析,根据S3C2410来跟踪代码,参考了S3C2410的datasheet和网上各个帖子一般来说,大家都是从start.s来分析UBOOT,但是事实是流程是从makefile中来的,也就是说是在敲入m...

关键字: s3c2410 uboot

程序从start。S开始启动start_code: /*  * set the cpu to SVC32 mode  设置管理模式  */ mrs r0, cpsr         bic r0, r

关键字: Flash nor uboot 启动分析

Ok6410的硬件相比mini6410强大许多(同样的价钱),但是ok6410的uboot制作用起来不方便,需要输入很多命令才可以烧写完一个系统。我还是比较怀念在2440上方便、灵活的烧写方式。 下面我们就来修改出一个...

关键字: s3c6410 uboot

在复杂的应用系统中通常都需要嵌入式操作系统的支持,这样嵌入式操作系统镜像文件的尺寸往往就会变得比较大。可以选择通过网络将嵌入式操作系统加载到SDRAM中运行来解决这一问题。另外,通过网络进行操作时,只要将需要升级的软件系...

关键字: tftp uboot 嵌入式开发 网络加载
关闭
关闭