概述
TDA4(TDA4VM) Linux SDK
1. 概述——安装和编译Linux SDK
注意:PC机必须使用ubuntu 18.04,否则会出现问题!
1.1 入门部分
1.1.1 安装SDK
安装ti-processor-sdk-linux-automotive-j7-evm-07_00_01-Linux-x86-Install.bin
这个SDK里包含了开发文件系统、目标文件系统、例程应用、工具链、BSP、脚本和文档。J721e的Linux SDK包含了ARM GCC工具链。
安装命令:
chmod +x ./ti-processor-sdk-linux-j7-evm-<version>-Linux-x86-Install.bin
./ti-processor-sdk-linux-j7-evm-<version>-Linux-x86-Install.bin
1.1.2 运行setup脚本
Linux SDK安装之后,运行目录下的setup.sh脚本,这个脚本在Linux SDK的安装目录下。脚本主要安装minicom、telnet、tftp和NFS等。
1.1.3 在Linux上格式化SD卡
在${PSDKL}/bin目录下有一个mksdboot.sh脚本,这个脚本可以进行SD卡分区和格式化,这样可以利用boot映像和文件系统进行启动。当然,前提是你有一个大于8GB的SD卡和读卡器。如果SD卡不能启动,可以用下面的命令恢复环境变量:
env default –a –f
saveenv
下面是分区SD卡,注意要提前看好SD卡所在的设备号,别搞错了:
sudo <SDK INSTALL DIR>/bin/mksdboot.sh --device /dev/sdX --sdk <SDK INSTALL DIR>
这样SD卡就会被分区,然后将tisdk-default-image-<platform>.tar.xz文件解压拷贝到上面。
如果想使用用一个小的文件系统,则可以修改mksdboot.sh文件中的
root_fs="$sdkdir/filesystem/tisdk-default-image-<platform>.tar.xz"
将其改为:
root_fs="$sdkdir/filesystem/tisdk-tiny-image-<platform>.tar.xz"
1.1.4 顶层的Makefile
这部分介绍了make相关的命令。可以编译出Linux内核和uboot等部分,并构建文件系统。
具体可以参看文档对应部分。
1.1.5 GCC交叉编译工具链
Processor SDK Linux J721e包含用于Cortex A设备的基于ARM的工具链。ARM交叉编译工具链还支持硬件浮点(hardfp)。包括arm-arago-linux-gnueabi在内的旧工具链使用软件浮点(softfp)。这导致使用hardfp工具链构建的软件与使用softfp工具链构建的软件不兼容。
默认情况下,Processor SDK Linux J721e包中包含的所有二进制文件都将为hardfp构建。
工具链二进制文件的名称也已从SDK的旧版本更新。以前的版本可能使用了前缀“arm-arago-linux-gnueabi-”。当前的SDK ARMv7工具链使用前缀“arm-linux-gnueabihf-”例如,新工具链的gcc编译器名为arm-linux-gnueabihf-gcc。
${Linux SDK DIR}/linux-devkit/中包含了工具链,其结构如下:
如果交叉编译Linux内核,先要设置环境变量:
source linux-devkit/environment-setup
1.2 编译得到SDK
这里是基于yocto的形式来编译得到SDK,具体可以参考对应的文档,可能还需要翻墙软件,否则有些代码下载不下来。
1.3 目录结构
bin/:包含用于配置主机系统和目标设备的帮助脚本。大多数脚本都被setup.sh使用。
board-support/:包含在移植到自定义平台时需要修改的SDK组件。这包括内核和bootloader以及任何树外驱动程序。
doc/:包含各种SDK文档,如软件清单和附加用户指南。这也是你可以找到带有设备培训资料的培训目录位置。
example-applications/:包含在开箱即用demo中看到的TI提供的示例应用程序的源代码,包括am-sysinfo、arm-benchmarks-1.3、oprofile-example、pru-icss-5.7.0。
filesystem/:包含参考文件系统。其中包括较小的基本文件系统以及功能齐全的SDK文件系统。
linux-devkit/:包含交叉编译工具链和库来加速目标设备的开发。
Makefile:从SDK的顶层为许多SDK组件提供构建目标。
Rules.make:设置顶级生成文件以及子组件生成文件使用的默认值。
setup.sh:配置用户主机系统以及开发目标系统。
configs/:包含Yocto config,用于描述用于构建SDK的不同Yocto recipe源和层。
yocto-build/:此目录允许使用yocto bitbake重建SDK组件和文件系统。有关运行yocto构建的更多详细信息,请参阅构建SDK部分。
1.4 RTOS SDK
注意:编译前将3种交叉工具链都放在${PSDKR}目录下
RTOS SDK是和Linux SDK并列的开发包,需要一起使用。这就需要下载RTOS SDK,即PSDKR。这个SDK提供的可以通过ARM Cortex-A72访问的特性包括:
TIDL on C7x
Vision pre/post processing functions on C6x
Vision HW accelerators (VPAC/DMPAC) on R5F
CSI2RX on R5F
Remote display on R5F
Ethernet switch on R5F
MCU/AutoSAR MCAL on R5F
OpenVX on Linux A72 and RTOS C6x, C7x, R5F
Deep learning demos on Linux A72
Surround view demos on Linux A72
最后
以上就是忐忑果汁为你收集整理的TDA4 Linux SDK(一)概述TDA4(TDA4VM) Linux SDK1. 概述——安装和编译Linux SDK的全部内容,希望文章能够帮你解决TDA4 Linux SDK(一)概述TDA4(TDA4VM) Linux SDK1. 概述——安装和编译Linux SDK所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复