uboot源码

uboot源码分析

在这里插入图片描述

分析uboot源码目录可知
arch:存放平台架构相关的文件
board:存放各个板子相关文件
README:帮助文件,存放所有源码配置编译的信息

分析README文件可知
在这里插入图片描述
处理器架构和板子类型的选择:
对于所有支持的板,都有现成的默认配置可用;只需输入"make <board_name>_defconfig"
示例:对于TQM823L模块类型:
cd u-boot
make TQM823L_defconfig
所以要首先确认board_name

方法一:

1.在uboot源码目录下执行:make fsmp1a_defconfig
在这里插入图片描述

显示不能在 arch/…/config/下找到 fsmp1a_defconfig这个文件,可知<board_name>默认的配置文件存放在arch/…/config/目录下,进入该目录查看需要的配置信息。

方法二:

通过makefile文件查找对应的目标文件。
在uboot源目录下,打开Makefile文件,搜索 config
在这里插入图片描述

使用echo命令打印每个变量的参数,( ( Q ) 、 (Q)、 (Q)(MAKE)、 ( b u i l d ) 、 (build)、 (build)@)。
返回uboot源码目录下,执行make fsmp1a_defconfig,会打印出如下信息:

            @
            make
            -f ./scripts/Makefile.build obj
            fsmp1a_defconfig

可知$(Q)就是@符,去掉即可执行回显,去掉后再次运行make fsmp1a_defconfig,打印出:

 make -f ./scripts/Makefile.build obj=scripts/kconfig fsmp1a_defconfig = make obj=scripts/kconfig fsmp1a_defconfig

如上可知,到scripts/kconfig目录下,打开Makefile文件,搜索defconfig,如上诉步骤,再次使用echo命令打印出每个变量的参数,再次去掉$(Q),去掉后再次运行make fsmp1a_defconfig,打印出:

scripts/kconfig/conf  --defconfig=arch/../configs/fsmp1a_defconfig Kconfig

scripts/kconfig/conf:通过file命令,查看scripts/kconfig/conf文件,是一个elf可执行文件
–defconfig=arch/…/configs/fsmp1a_defconfig:板子参数
Kconfig:是uboot源码顶层目录下配置文件
通过以上分析可知:conf是一个可执行文件,fsmp1a_defconfig和 Kconfig作为参数传递给conf

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值