STM32mp157-dk2 uboot编译

stm32mp157工作有两种模式:普通模式/安全可靠模式

1.新建工作目录

mkdir  -p  /home/work/stm32mp157

2.获取ST官方源码有以下文件

- v2018.11.tar.gz
   - 000*.patch
   - Makefile.sdk

3.解压uboot源码,并打补丁

 $> tar xfz v2018.11.tar.gz
 $> cd u-boot-2018.11
 $> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done

4.编译,在源文件外面目录进行编译,便于管理输出代码(信任模式

1)在uboot同级目录新建一个build目录

mkdir  build

2)创建一个编译输出目录

export KBUILD_OUTPUT=../build

3)先配置相对应的板子

#>make stm32mp15_trusted_defconfig

4)然后根据设备树编译相对应的板子

#> make DEVICE_TREE=stm32mp157c-dk2 all

出错报告:我用export创建build文件夹的时候,总是出现please run 'make mrproper',然后make  mrproper之后发现还是提示此错误

原因:因为我执行这个命令会进入../build目录清除上次的编译结果,但是uboot树目录中却没有清理,然后再此目录树下执行make mrproper或者make distclean就可以了。

也可以这样编译

1)make  O="../build"  stm32mp15_trusted_defconfig

2) make    O="../build"  DEVICE_TREE=stm32mp157c-dk2 all

3)make  distclean清除上一次的编译结果

4)输出文件(安全可靠模式)

u-boot.stm32    应该拷贝到第三分区SSBL

tf-a.stm32 (provided by TF-A compilation)   拷贝到第一分区FSBL

5.普通模式编译

1)uboot同级目录新建一个普遍编译输出目录

mkdir  basic

2)配置模式:make  O=“../basic”  stm32mp15_basic_defconfig

3)编译模式:make O="../basic/" DEVICE_TREE=stm32mp157c-dk2 all

4)进入basic目录

cd  ../basic

5)输出文件

>spl/u-boot-spl.stm32:  spl目录下的u-boot-spl.stm32 需要拷贝到磁盘第一、二分区作为FSBL第一阶段启动文件,需要拷贝2此
> u-boot.img: 此文件需要拷贝到第三分区作为SSBL第二阶段启动文件
普通模式只需把“trusted” 改成“basic”就可以

 

 

 

 

 


 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值