tf-a源码移植

1.对tf-a源码进行解压:

$> tar xfz tf-a-stm32mp-2.2.r2-r0.tar.gz

2.打补丁:

进入tf-a源码目录 $> cd tf-a-stm32mp-2.2.r2

打补丁命令 $> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done

3.配置交叉编译工具链

EXTRA_OEMAKE=CROSS_COMPILE=arm-linux-gnueabihf- 

4.拷贝设备树

(1)cd tf-a-stm32mp-2.2.r2/fdts目录下

cp stm32mp157a-dk1.dts stm32mp157a-fsmp1a.dts

cp stm32mp15xx-dkx.dtsi stm32mp15xx-fsmp1x.dtsi

(2)修改上层目录下的 Makefile.sdk 编译脚本在 TFA_DEVICETREE 配置项中添加 stm32mp1
57a-fsmp1a

TFA_DEVICETREE ?= stm32mp157a-fsmp1a stm32mp157a-dk1 stm32mp157d-dk1 stm32
mp157c-dk2 stm32mp157f-dk2 stm32mp157c-ed1 

(3)修改 fdts/stm32mp157a-fsmp1a.dts

#include "stm32mp15xx-dkx.dtsi"
修改为
#include "stm32mp15xx-fsmp1x.dtsi"

5.编译源码

 make -f $PWD/../Makefile.sdk TFA_DEVICETREE=stm32mp157a-fsmp1a
TF_A_CONFIG=trusted ELF_DEBUG_ENABLE='1' all

报错信息:

  make[1]: 离开目录“/home/linux/FSMP1A/tf-a-stm32mp-2.2.r2-r0/tf-a-stm32mp-2.2.r2”
        /bin/sh: 22: stm32wrapper4dbg: not found

由于该打印信息一定经由顶层目录下的makefile打印,所以在顶层的makefile.sdk中搜索

stm32wrapper4dbg

找到  if [ "$(TF_A_ENABLE_DEBUG_WRAPPER)" = "1" ]; then \
                 # Generate wrapper for debugging \
                 stm32wrapper4dbg -s $(LOCAL_PATH)/../build/

TF_A_ENABLE_DEBUG_WRAPPER 变量 等于时会一直打印该内容

搜索:TF_A_ENABLE_DEBUG_WRAPPER 变量 ,
       将 TF_A_ENABLE_DEBUG_WRAPPER ?= 1

可知这里将TF_A_ENABLE_DEBUG_WRAPPER 变量赋值为1了,所以为了不执行打印将

变量更改为 TF_A_ENABLE_DEBUG_WRAPPER ?= 0

6.编译源码

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值