T2080 U-BOOT与OS内核移植 u-boot移植篇(一)——创建新目标板的u-boot工程

本文详细介绍如何为T2080处理器创建新的U-Boot工程,包括文件夹创建、文件修改、头文件及配置项的增加等步骤,为读者提供了一个完整的移植流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


上一篇我们带领大家进行了环境的部署和配置。这篇文章开始,我们进入正题,开始着手进行u-boot的移植工作。

在进行u-boot代码修改前,我们应该先创建一个属于自己目标板的工程。我们的目标板使用的是T2080处理器,因此参考T2080RDB参考设计板的u-boot工程进行移植。又因为我们的目标板最终要集成可信计算模块(TPM),所以姑且给我们的目标板取个名字叫“T2080TPM”。别看只差了3个字母,过程可没这么简单。

网上有诸多前人的文章,大家都可以参考,但由于处理器的差异或一些其他原因,都不能直接用于我们的T2080项目。因此本文详细描述一个新T2080目标板u-boot工程的创建过程。
先贴一张官方手册中的方法图(文件:u-boot-2020.01/doc/README.Kconfig)。
Tips to add/remove boards
官方手册只是个要点提示,实际要做的工作更加细致和具体。我就只给大家用流水账的方式按条目写下来,其中很多步骤之间的关系我也没有搞得太清楚,还需要更深入地学习。

一、创建新目标板文件夹并修改相应文件

1.创建新目标板文件夹

进入目录u-boot-2020.01/board/freescale,复制t208xrdb文件夹,改名为t2080tpm,新目标版文件夹就算创建好了。

2.修改t2080tpm文件夹中的相应文件

a) t208xrdb.c

修改文件名:

  • t208xrdb.c -> t2080tpm.c

修改文件内容:

  • Ln.20 #include “t208xrdb.h” -> #include “t2080tpm.h”

b) t208xrdb.h

修改文件名:

  • t208xrdb.h->t2080tpm.h

c) MAINTAINERS

修改文件内容:

  • Ln.1 T208XRDB BOARD->T2080TPM BOARD
  • Ln.4 board/freescale/t208xrdb/->board/freescale/t2080tpm/
  • Ln.5 include/configs/T208xRDB.h-> include/configs/T2080TPM.h
  • Ln.6 configs/T2080RDB_defconfig-> configs/T2080TPM_defconfig
    文件后续部分视情况保留,如果从NorFlash启动且不使用Secure Boot功能可删掉。

d) Kconfig

修改文件内容:

  • Ln.1TARGET_T2080RDB-> TARGET_T2080TPM
  • Ln.4 default “t208xrdb”-> default “t2080tpm”
  • Ln.10 default “T208xRDB”-> default “T2080TPM”

e) Makefile

修改文件内容:

  • Ln.10 CONFIG_TARGET_T2080RDB-> CONFIG_TARGET_T2080TPM
  • Ln.10 t2080rdb.o-> t2080tpm.o

二、增加头文件

u-boot-2020.01/include/configs文件夹中增加文件T2080TPM.h,并修改文件内容:

  • 将文件中“__T2080RDB_H”替换为“__T2080TPM_H
  • 将文件中“t2080rdb”替换为“t2080tpm

三、增加defconfig条目

进入目录u-boot-2020.01/arch/powerpc/cpu/mpc85xx,修改Kconfig文件内容:

  • 增加条目config TARGET_T2080TPM,内容复制config TARGET_T2080RDB条目内容,并将T2080RDB改为T2080TPM
  • 增加条目source “board/freescale/t2080tpm/Kconfig”

四、增加defconfig文件

进入目录u-boot-2020.01/configs,增加文件T2080TPM_defconfig(复制文件T2080RDB_defconfig并改名),并修改文件内容:

  • Ln.6 CONFIG_TARGET_T2080TDB=y -> CONFIG_TARGET_T2080TPM=y
  • Ln.33 CONFIG_DEFAULT_DEVICE_TREE=“t2080rdb” -> CONFIG_DEFAULT_DEVICE_TREE=“t2080tpm”

五、修改生成dtb的Makefile

进入目录u-boot-2020.01/arch/powerpc/dts,修改Makefile文件内容:

  • 增加条目dtb-$(CONFIG_TARGET_T2080TPM) += t2080tpm.dtb

六、验证一下效果

至此我们的新目标板u-boot工程就算创建完成了。来验证一下效果。

t2080@ubuntu: make T2080TPM_config(加载新目标板的配置)
读取新目标板的配置文件

t2080@ubuntu: make u-boot.bin(生成u-boot.bin)
生成u-boot.bin
OK!成功生成u-boot.bin文件。拥有了自己的工程后,我们真的真的要开始修改u-boot代码了。我们就从start.S开始吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值