T2080 U-BOOT与OS内核移植 准备篇(二)——开发调试环境入门(Trace32、QorIQ Linux SDK和QCVS)

上一篇我们简单介绍了几种常用与T2080开发调试相关的工具和环境。这篇文章将带领大家进行环境的部署和配置。

回顾一下我们选择的工具集:

1.Trace32
用途一:基础资源(片上寄存器/片上SRAM、内存、FLASH和串口等)的可用性验证。
用途二:PBL(RCW)、u-boot和OS(对于Linux包括kernel、dtb和rtfs的烧录)。
用途三:RCW、u-boot和OS kernel代码调试(单步、断点等方式)。

注:Code Warrior也可用于完成用途二和用途三中u-boot的调试。但本项目全部选择Trace32进行开发(毕竟有贵的就不用便宜的了)。

2. QorIQ Linux SDK
NXP官方提供的交叉编译工具链,主要用于C/C++代码的编译和可执行(调试)文件的生成。用于编译和生成u-boot、OS kernel和驱动程序。
官方推荐在Ubuntu环境下使用。

3. QCVS(QorIQ Configuration and Validation Suite)
NXP官方以Code Warrior离线插件的形式提供的用于编辑和生成QorIQ系列处理器PBL(Pre-BootLoader)的工具。需要在Code Warrior环境下使用。

下面简单介绍这几个工具。

一、Trace32

作为一套(一个Trace32 POWER DEBUG PRO + 一套T2080 DEBUG CABLE) 价值一辆B级轿车的高端调试器,它应有的逼格还是有的。先来展示一下:
图1 Trace32手册(部分)
共计324MB的384份用户手册(笔者估算总页数在20000页上下,全英文),用自己的实力劝退了无数开发者。不过呢,大家不用怕,这不也正说明了资料的齐全。

所有的帮助文档都直接或间接的链接到directory.pdf这份文档,理论上跟着此文档的步骤可以解决所有的使用问题。但这是一棵枝叶繁茂的大树,“横柯上蔽,在昼犹昏”,我们必须斩掉无用的枝叶。

下面我们简单介绍手册的构成。(注意:我们的Trace32硬件是“POWER DEBUG PRO×1 + T2080 DEBUG CABLE×1。)
在这里插入图片描述
下面简要说明开发过程中所涉及的功能和相应的手册。

1. 工具配置和软件安装

相关文档:icd_quick_installation.pdf

  • 工具配置:提供关于TRACE32调试和调试的信息和插图跟踪工具。
  • 软件安装:软件安装:介绍TRACE32在MS Windows、PC Linux、Mac OS和SunOS下的默认安装。

2. 使用PRACTICE脚本编写脚本(.cmm脚本)

PRACTICE是Trace32提供的编程语言。PRACTICE脚本的主要任务是:

  • 为开发工具提供正确的启动顺序
  • 实现FLASH编程自动化
  • 定制用户界面
  • 存储和重新激活特定的TRACE32设置
  • 运行自动测试

2.1 启动场景定义

这里说的启动脚本,可大可小。但我们通常会先定义目标模块的“最小系统”,这个最小系统对应着一个“最小配置”,启动脚本的工作就是完成这个最小配置。最小配置与目标板的处理器和外设有着直接的关系。

tutor_setup.pdf中定义了4个典型的应用场景,针对每个场景描述了常用操作和命令,可供参考。

2.2 连接目标硬件并配置t32start

使用仿真器初步熟悉了Power View工具界面后,我们开始使用t32start工具连接目标硬件。

2.2.1 连接目标硬件

前文已描述过,参考icd_quick_installation.pdf连接目标硬件。

2.2.2 配置t32start

相关文档:app_t32start.pdf
t32start可以运行在多种操作系统上,按照教程一步一步配置即可。

2.3 PRACTICE脚本(.cmm脚本)编写

2.3.1 参考模板(启动脚本)

Trace32为每个型号的CPU提供了一个或数个初始化脚本实例。以FreeScale T2080 RDB(参考设计板)为例,…\Trace32\demo\powerpc64bit\hardware\qoriq_t2\t2080qds文件夹下就提供了init.cmm启动脚本。init.cmm的内容如图所示。
init.cmm

2.3.2 脚本编写、修改和调试

启动脚本可以在此基础上,找到目标硬件和RDB的差异,结合定义的启动场景进行修改。

PRACTICE脚本语言练习手册:training_practice.pdf

PRACTICE脚本语言命令详解:general_ref_a.pdf ~ general_ref_z.pdf

T2080处理器特性相关资源和调试方法描述手册:debugger_ppcqoriq.pdf

3. 使用仿真器熟悉PowerView(Trace32 IDE)

在劳德巴赫官网https://www.lauterbach.com/frames.html?download.html上,各类处理器都可以找到相应的模拟器。

下图是个不同系列处理器模拟器所对应的手册。
各系列模拟器手册
以PowerPC的模拟器和手册simulator_ppc.pdf为例,如下图所示。
PowerPC模拟器
其主要功能是基于PowerView的功能和界面,仿真了一个powerpc的硬件环境,基于这个仿真环境提供了一段C代码。在调试的过程中,练习和熟悉PowerView的IDE功能(包括各种调试工具和PRACTICE脚本)。针对每个系列处理器都有一个定制的仿真器,寄存器等片上资源都是基于真实处理器配置的。
这个工具最大的特点是:纯软件模拟!不需要任何外设支持,非常容易上手。

相关文档1:training_debugger.pdf
training_debugger提供了更系统的调试方法介绍和训练。

相关文档2:ide_user.pdf

二、QorIQ Linux SDK

QorIQ Linux SDK主要用于生成能够在目标板上运行的可执行代码(C/C++)。SDK的版本根据目标板的情况来选择,本项目中所使用的T2080模块使用的是QorIQ Linux SDK v2.0 PPC64E6500 IMAGE.iso文件中所提供的开发环境。工具在NXP官方网站上可下载。

具体安装和配置过程参考博文: NXP(Freescale) QorIQ T2080 SDK安装和使用_黑客三遍猪-CSDN博客。

最终目标是能够在命令行看到以下powerpc程序(powerpc工具链):
e6500处理器内核工具链
有了工具链后,就可以编译u-boot了。网上u-boot编译的相关资料很多,这里就不再赘述了。
u-boot编译结果

三、QCVS 4.5

最后是RCW生成工具,具体的安装过程参考博文:NXP(Freescale) QorIQ T2080 CodeWarrior PBL工程生成RCW_黑客三遍猪-CSDN博客

需要说明的是QCVS 4.5在NXP官网上已经无法找到,估计是换名字了或者是集成到了其他工具里。这里附上下载地址:

https://drive.google.com/file/d/1f0DqcGRtVlMarYG3J1HcREcZ3PaH_xgr/view?usp=sharing

地址是Google网盘,无法下载的可直接与我联系。

四、小结

本文介绍了T2080模块U-BOOT与OS内核移植项目所采用的开发工具。抛砖引玉,工具详细的使用方法还需要仔细研读相关文档。

开发准备工作到这里就算是完成了,接下来我们要开始真正的移植工作了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值