在分析UBOOT源码之前,首先要做些准备工作。
1. 下载UBOOT源码
去
http://ftp.denx.de/pub/u-boot/网站下载最新的UBOOT源码u-boot-2019.04-rc2.tar.bz2
2.下载交叉编译工具
去linaro官网
https://www.linaro.org/downloads/下载最新的交叉编译工具
3.Windows下安装Source Insight, Notpad++等看代码工具
4.在Ubuntu主机上解压Uboot代码和交叉工具链,在Windons主机下解压Uboot
5.创建Source Insight工程,注意删除ARCH和Board文件夹中与IMX8及ARMV8无关的代码,删除Document等无用文件夹
6.配置并编译uboot
export CROSS_COMPILE =XXXXXX/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
export ARCH=arm64
make V=1 imx8qxp_mek_defconfig > configprocess.txt
//V=1表示将make执行过程打印出来
make V=1 > makeprocess.txt
${CROSS_COMPILE}objdump -D u-boot > u-boot.asm
//将u-boot反汇编方便分析执行过程
可以将上述命令写入shell脚本方便持续使用,中间报错的话有些依赖包自己安装下
得到的configprocess.txt、makeprocess.txt文件用于分析UBOOT的Make过程
得到的u-boot.asm用于分析U-BOOT的执行过程