概述
LTP-DDT 是 TI 开发整理的一个测试套件,目的是用来验证 Linux 发行版。而它是基于 LTP 的。LTP 全称 Linux Test Project,由 IBM、思科等多个公司共同开发维护。LTP-DDT 相较于 LTP 针对运行于嵌入式设备上的 Linux 内核及驱动的测试做了增强和优化,尤其是适配了 TI 自己的很多 ARM 平台。而这一点正是我们看重的。
本文尝试说明使用 LTP-DDT 针对 omapl138 的配置,测试广州创龙的 TL138-EVM。
编译
准备源码
- 下载源码:git clone http://arago-project.org/git/projects/test-automation/ltp-ddt.git
- 这里测试的版本,cat VERSION :20180118
准备编译环境
- 按 TL138-EVM 开发板用户手册说明操作,安装 mcsdk。
- 按 TL138-EVM 开发板用户手册说明操作,编译内核。
- 注意在最后补充执行以下命令,编译 LTP-DDT 要用到。
make CROSS_COMPILE=arm-none-linux-gnueabi- headers_install
编译
- 进入 LTP-DDT 源码仓库目录。
- 生成 configure 等文件:make autotools
- ./configure --host=arm-linux-gnueabihf
- make SKIP_IDCHECK=1 KERNEL_USR_INC=/home/jack/omapl138/kernel/usr/include CROSS_COMPILE=arm-linux-gnueabihf- clean
- 其中 KERNEL_USR_INC 配置的路径是前面编译的内核的路径。
- 在执行编译之前需要修改点东西,不然可能会出现下图中的两个错误。
- vim testcases/ddt/edma_test_suite/Makefile KERNEL_INC 改为 KERNEL_USR_INC
- mv ./testcases/ddt/ipc_test_suite . # 去除该项测试,因为未知如何添加对这项的支持,有了解的朋友请留言告知。
- make SKIP_IDCHECK=1 KERNEL_USR_INC=/home/jack/omapl138/kernel/usr/include CROSS_COMPILE=arm-linux-gnueabihf-
cc1: error: ../utils/user/st_fileapi.c: not a directory
tests_rpc_stress.c:57:29: fatal error: linux/rpmsg_rpc.h: No such file or directory
安装
- sudo mkdir -p /opt/ltp-ddt-install
- sudo make DESTDIR=/opt/ltp-ddt-install SKIP_IDCHECK=1 PLATFORM=omapl138-lcdk install
运行
将上一步“安装”生成的 /opt/ltp-ddt-install 文件夹的内容复制到 TL138-EVM 上。
进入目录执行以下命令即可看到 lmbench 测试项测试带宽、延迟的相关情况。测试结果如下图所示。
./runltp -P omapl138-lcdk -f ddt/lmbench
总结
LTP-DDT 里的测试主要还是针对 Linux 内核和驱动进行测试的,要想达到测试板卡上各个硬件实际功能与性能的效果,还要对这套测试进行增强。这个问题将在后续继续研究。
参考
- LTP 官网:https://github.com/linux-test-project/ltp
- LTP-DDT 官网:http://processors.wiki.ti.com/index.php/LTP-DDT
廖杰良 - 2018-11-15