从14年8月接触板子,开始学习达芬奇DM8168的架构并尝试移植项目的代码到板子上运行。到15年4月共8个月时间,从板子uboot,打印简单的hello world到把项目代码移植到架构中,调整DSP memsize的大小,项目基本也算迈出了重要的一步。其中这块开发板的各种傲娇暂且不谈,这段时间把自己学到的知识以及遇到的问题慢慢回忆记录,以作总结。

Ubuntu  12.04

DVR_RDK_04.01.00.02

(以下所有指令都可以在切换到root后去掉sudo)

一.tftp服务器的安装配置

1.      安装tftp

$  sudo apt-get install tftpd tftp xinetd

2.      建立配置文件

在/etc/xinetd.d/下建立一个配置文件tftp

$  sudo vim tftp

1. service tftp

2. {

3. protocol = udp

4. port = 69

5. socket_type = dgram

6. wait = yes

7. user =  nobody

8. server = /usr/sbin/in.tftpd

9. server_args = -s  /tftpboot

10. disable = no

11. }

这里需要注意protocol是udp,而非tcpip,需要在uboot配置参数时对应起来。

Server_args就是tftp服务器的根目录,也是是uImage应该放置的位置。

3.      建立tftp文件目录

$ sudo mkdir  /tftpboot

$ sudo chmod –R 777  /tftpboot

4.      重启tftp服务

$  sudo /etc/init.d/xinetd restart

5.      测试tftp服务

先在当前目录下建立test.txt文档。

$ tftp 127.0.0.1    (连接本机)

tftp>puttest.txt

tftp>get test.txt

get指令用于下载/tftpboot目录中的文件

put指令用于上传当前目录下的文件到/tftpboot中

输入quit退出。

二.NFS安装配置

1.      安装

$  sudo  apt-get install  nfs-kernel-server

2.      配置参数文件

$  vim /etc/exports

在文件末尾加入

/home/DVRRDK_04.01.00.02/target/rfs_816x *(rw,no_root_squash,no_all_squash,sync)

/home/DVRRDK_04.01.00.02/target/rfs即为板子与主机共享的目录。*代表允许所有的网络段访问,rw是可读写权限,sync是资料同步写入内存和硬盘,no_root_squash是nfs主机端分享目录使用者的权限。用者的权限,如果客户端使是root用户,那么对于该共享目录而言,客户端就具有root。

3.      重启nfs

$  sudo /etc/init.d/nfs-kernel-server restart

4.      测试nfs

$ mount  -o  nolock 127.0.0.1:/home/DVRRDK_04.01.00.02/target/rfs_816x  /mnt

使用以上指令可以把目录挂载在本地磁盘mnt(根目录下)。、

把打开/mnt文件夹全部关闭后使用umount可以卸载挂载文件

三.DVR_RDK安装

一般拿到的安装文件为:DVRRDK_XX.XX.XX.XX--Linux-x86-Install.bin(xx.xx.xx.xx为所拿到的DVRRDK的版本号,比如04.01.00.02)

1.      安装

$  ./ DVRRDK_XX.XX.XX.XX—Linux-x86-Install.bin

安装文件会安装DVRRDK_XX.XX.XX.XX.tar.lzma到当前目录。

2.      解压

解压到当前目录下:

$  tar --lzma  -xvpf  DVRRDK_XX.XX.XX.XX.tar.lzma

这样就会得到DVRRDK文件夹,内含dvr_rdk, pre_built_binary, target等一些文件夹和pdf文档。

四.Uboot环境变量配置

配置好nfs和tftp后,将相应的uImage (比如我这里使用的/DVRRDK_04.01.00.02/tftphome/

uImage_DM816x_TI_EVM)copy到相应的tftpboot目录中(上文中提到),连接好DM8168的电源,网线,串口线。

重开一个terminal,进入minicom,DM8168的串口即可在主机terminal中打印相应的信息。输入:

$ minicom

打开DM8168电源,press any key进入uboot环境变量配置。

(主机ip为:192.168.100.202   板子ip为192.168.100.14)

#  setenvipaddr 192.168.100.14

#  setenvserverip 192.168.100.202

# setenv bootargsconsole=ttyO2,115200n8 root=/dev/nfs rw nfsroot=${serverip}:/home/DVRRDK_04.01.00.02/target/rfs_816x,udpip=${ipaddr}::192.168.100.1:255.255.255.0::eth0:off vram=20M mem=128M notifyk.vpssm3_sva=0xbd200000 ddr_mem=1024M

# saveenv

# boot

Tips:1.minicom中 Ctrl+A  再按Z可对minicom进行配置 一般要打开linewrap

2.偶尔关闭terminal后minicom进程还没有关闭,再打开minicom会出现:Device /dev/ttyS0 is locked. 这时候输入ps -A  查看当前进程,kill 掉minicom的进程再重新打开即可。

参考:DM8168软件使用指南

DM81xx_DVR_RDK_Install_Guide

DM8168 DVR_RDK配置相关推荐

  1. DVR_RDK编译报错

    报错信息: abnormal termination of /opt/dm8168/dvr_rdk/../ti_tools/cgt_dsp/cgt6x_7_3_5//bin/cmp6x make[2] ...

  2. Davinci的异构多核间通信基础组件SysLink

    感谢原作者robin19890305的经验分享. =========================================================================== ...

  3. Davinci的异构多核间通信基础组件SysLink 2.0

    Davinci的异构多核间通信基础组件SysLink 2.0 2013年08月31日 00:10:51 阅读数:10654 ====================================== ...

  4. DM8168 开发环境搭建

    参考<DM81xx_DVR_RDK_Install_Guide.pdf> location:/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk/docs 1,准备工作: ...

  5. DM8168 IPNC Boa移植

    1.交叉编译openssL 下载openssL-1.0.0.tar.gz在虚拟机下进行交叉编译,生成libcrypto.a及libssl.a.将这两个文件拷贝到DVRRDK_03.00.00.00/b ...

  6. 基于多核DSP处理器DM8168的视频处理方法

    摘要:随着1080P高清视频以及4K超高清晰视频的普及和应用,基于传统单核DSP处理器的视频信息处理已有些力不从心.为此TI公司推出了一款专门用于高清视频处理的多核DSP处理器,它拥有4个不同类型的处 ...

  7. 基于DM8168 EVM的智能视频跟踪系统

    基于DM8168智能视频跟踪系统以TMS320DM8168处理器为核心,各种外设接口组成的智能视频分析跟踪系统.本评估板(DM8168 EVM)硬件模块高度集成了DM8168,以及其它外设如NAND. ...

  8. DM8168 DVRRDK软件框架研究

    Netra(DM8168)处理器是个多核处理器,每个核之间相互独立却又相互关联,如何高效简洁地利用每个核完成一套系统功能是非常关键的,RDK这套软件平台就是针对这种多核平台设计的一套多通道视频应用方案 ...

  9. DM8168 编译filesystem步骤

    在板子跑起来之前,需要先编译好8168的文件系统.前提是已经设置好板子的类型等参数,详见<DM8168环境搭建> 1.进入<DVR_RDK_BASE>/dvr_rdk目录 ma ...

最新文章

  1. 关于编码的一切【转载】
  2. 笔记-信息系统开发基础-面向对象基本概念-汇总
  3. boost::geometry模块自定义坐标系示例
  4. if else if else语句格式_你还在用if/else吗?
  5. LeetCode 737. 句子相似性 II(并查集)
  6. 优秀Java开发者都在看的书籍
  7. 项目是采用目前比较流行的 SpringBoot/SpringCloudAlibaba构建新零售微服务电商项目
  8. Node.js: fs.readFile/writeFile 和 fs.createReadStream/writeStream 区别
  9. 苏宁:已完成偿还员工借款本金的1% 力争在2022年6月30日前全部还完
  10. rx550 黑苹果_黑苹果Hackintosh显卡入手指南
  11. 局域网唤醒(Wake On LAN)+树莓派实现远程设备唤醒
  12. 官方通知:考研国家线预计4月中旬公布
  13. 自动驾驶汽车传感器技术解析—毫米波雷达
  14. 2010~2011手机CPU对比
  15. 【读 深入浅出数据分析】 一日一章 读书第三天 第三章-最优化:寻找最大值
  16. 2023年全国最新工会考试精选真题及答案47
  17. linux修改dns不生效,Linux 临时修改和永久修改DNS的方法
  18. Codeforces 1324D(红黑树+求指定区间中大于指定值的个数)
  19. Visual Assist 配色
  20. 程序员常用的三款在线作图工具

热门文章

  1. umount: 提示 target is busy
  2. el-dropdown-item添加点击事件
  3. STK的多普勒频移仿真
  4. iOS present 和 push
  5. 帮我写一篇10000字关于作业设计的论文
  6. kotlin 子线程睡3秒_Kotlin中线程和协程之间的区别
  7. 图像预处理需要注意的几点问题
  8. MAR DASCTF 2021 baby_flask
  9. Google Earth Engine(GEE)——国际卫星云气候学项目:HXG云量数据集
  10. 微信小程序的简单开发案例(记事本)