Hi3518内核和文件系统烧写以及nfs挂载
更新时间:2023-12-04 05:42:01 阅读量: 教育文库 文档下载
Hi3518内核和文件系统烧写以及NFS挂载
当前版本 文档编号 总页数 编制人 编制日期 V1.0 密级 正文页数 评审人 评审日期 附录页数 批准人 批准日期 ** 2015.02.05 **
修改履历
序状版号 态 本 修改内容 修改位置 评审人 批日期 准修改人 人 日期 日期 * 2015.1.29 1 2 3 4 5 6 7 C M 1.0 1.0 评阅意见 状态:C—创建文档,A—增加内容,M—修改内容,D—删除内容 第一步编译内核和文件系统
文档说明:涉及到目录的请根据自己的实际情况进行更改,本文档仅根据笔者的测试进行举例说明。
1 安装交叉编译器
cd arm-hisiv100nptl-linux ./cross.install 说明:3518e推荐使用100nptl进行编译,arm-hisiv100nptl-linux-(使用uclibc库,uclibc 工具链支持全规格版本和小型化版本 )arm-hisiv200-linux-(glibc 库glibc 工具链只支持全规格版本),实验时没有使用hisiv200,不确定会出什么问题,不推荐使用。
2 编译步骤
cd ./linux-3.0.y ./mk3518.sh
mk3518.sh 脚本里面包含了编译linux内核所需的所有的命令,具体看mk3518.sh文件,编译成功将生成在目录arch/arm/boot/uImage文件,这个就是要烧录到板子上的
注意:大小大约为1M。大于1M也许会出问题,在实验前期都是大于1M,烧录的时候出问题。
制作rootfs文件系统,使用的是最新的squashfs只读文件系统,使用的工具为mksquashfs,目录squashfs4.2为这个工具的代码
rm ./rootfs.squashfs //仅仅为了删除之前存在的文件系统,如果没有,可不执行这一步。
./mksquashfs ./rootfsrootfs.squashfs -b 256K
cp ./rootfs.squashfs ./tftpboot //可不用命令,自己拷贝,黏贴,文件夹根据自己实际情况所定。
生成的rootfs.squashfs这个就是要烧录到板子上的文件
注意:生成的文件大约为1.5M
地址空间说明
| 256K | 1M | 1.5M | |------------|---------------|-----------------------| | boot | kernel | rootfs |
剩下5.25M可以由用户自由使用。
可以看出如果文件超出限制,将会出现内存不够的错误。烧写前期遇到几次提示内存不足的错误。
第二步烧写内核和文件系统
1 烧写工具安装和配置
win7下使用tftod32和secureCRT 进行烧写。
a、安装usb转串口的驱动
在~/usb驱动/WIN7驱动2/Prolific_DriverInstaller_v110.exe目录下 安装后到设备管理器中查看是否安装成功。
注:有时系统会自己安装,安装以后只要secureCRT设置正确,仍可以正常使用,如果不能正常使用,请尝试卸载系统自动安装的,使用hisi提供的驱动。
b、安装tftpd32软件,在百度上面随便搜索一个下载,安装后,打开tftpd32软件。 其中当前目录指的是安装tftpd32的安装目录,点击显示目录可以看到该目录下的内容。后面要烧录的镜像文件都是放在这个目录下的,在u-boot控制命令台加载镜像文件的时候,自动从该目录下搜索指定的镜像文件。 服务器IP地址指的是当前PC机的IP地址,当打开tftpd32软件的时候,会自动把你当前PC上的IP地址加载到此处。如果你想修改服务器的IP地址,直接把你的PC的IP地址修改后,打开tftpd32软件,会自动加载的。
注:烧录基本不用远程服务器,如果有兴趣可以研究使用远程服务器烧录,不推荐使用远程服务器。
c、安装SecureCTR软件,具体步骤请百度。
首先打开SecureCTR软件,选择快速链接,会弹出一个选项框。 在Protocla 下拉菜单中选择 serial ;
Port的选择依据安装驱动时分配的com端口; 波特率选择115200 点击ok
当窗口出现绿色勾时表明链接成功。
d、重新启动开发板,按住ctrl+c进入u-boot的控制台,再根据烧录步骤,输入命令烧kernel和文件系统。但是一定要把相关镜像文件拷贝到tftpd32的安装目录下,不然找不到。
注。切记uImage和 rootfs一定要拷贝到tftpd32的根目录下。
2 烧写过程
注:千万不要忘记把tftpd32打开并进行设置
uboot烧写内核
set serverip 192.168.16.100 mw.b 0x82000000 0xFF 0x100000 tftp 0x82000000 uImage sf probe 0
sf erase 0x40000 0x100000
sf write 0x82000000 0x40000 0x100000
烧写rootfs文件系统
mw.b 0x82000000 0xFF 0x180000 tftp 0x82000000 rootfs.squashfs sf probe 0
sf erase 0x140000 0x180000
sf write 0x82000000 0x140000 0x180000
设置启动参数和启动命令
setenvbootargs 'mem=32M console=ttyAMA0,115200 root=/dev/mtdblock2
rootfstype=squashfsmtdparts=hi_sfc:256K(boot),1M(kernel),1536K(rootfs),5376K(user)'
setenvbootcmd 'sf probe 0;sf read 0x82000000 0x40000 0x100000;bootm 0x82000000' saveenv reset
注意有个ko没有加载成功,没有加载成功的原因未知,但是可以手动加载。 加载办法为挂载完文件系统以后用insmod 加文件的绝对路径。
第三步挂载nfs
工具telnet
1 telnet启动办法
在命令提示符下输入telnet 192.168.16.105 ip为板子的ip
出现如下错误可以在securtCRT里面输入telnetd打开板子的telnet端口。
2 telnet的使用
a: 现修改板子的ip地址,确保pc,ubuntu,板子在同一个网段,板子ip地址修改可以在secureCRT中修改,修改使用命令
ifconfig eth0 192.168.16.105 //配置板子的IP地址 ifconfig //查看网络状态
ping 192.168.16.100 //查看是否与PC机连通网络 连通的情况下,才能正确挂载nfs系统:
ubuntu下修改ubuntu的ip地址同样使用ifconfig eth0进行修改。 修改以后用ping检查三者是否相互ping通,如果不能ping通,自行检查。
b:在命令提示符下输入telnet 192.168.16.105 //ip地址为板子的ip
C:\\Users\\Administrator>telnet 192.168.16.105
正在连接192.168.16.105...无法打开到主机的连接。在端口 23: 连接失败
如果出现这个错误,为板子的telnet端口没有开启所至,在secureCRT中输入telnetd,打开板子的telnet端口。
连接以后需要输入板子的帐号密码。我们使用的hi3518e使用的帐号为root,密码为空。但是在淘宝或者公司卖的,uboot的密码一般是不告诉买家,为了防止查看他们的文件系统。如果自己买开发板练习,切记telnet连接以后不能加密。
c:使用mount -t nfs -o nolock 192.168.16.102:/zhang/hi3518/nfs /mnt命令在telnet下进行挂载,ip地址为ubuntu的ip地址,因为我们把ubuntu下nfs文件夹挂载到板子上,以后调试程序,可直接修改nfs文件夹下的文件,如同直接修改板子上的文件一样,但是这仅仅是挂载,并不修改板子的文件。
第四步: sample_venc 例子程序测试
1: mpp包编译
cd mpp/sample
make
//mpp/sample/venc 就是海思提供的同时编码的程序代码
//说明海思3518E受限硬件资源,最大只能编码1个码流、最大25帧(一个720P) 可以直接在ubuntu下编译,将编译好的mpp文件夹拷贝到nfs目录下,这就是nfs的好处,只需挂载一次,需要添加删除文件可直接在nfs目录下操作,如同在板子上添加删除文件一样。
2:加载驱动,生成H264码流文件。 cd /ko
./load3518e //海思底层视频编码驱动加载 cd /mnt
./sample_venc 0 //海思提供的同时编码1个码流的例子,会在当前目录下写H264裸码流文件,播放裸码流请用VLC播放当前目录生成的H264文件(stream_chn0.h264) // VLC软件下载地址:
http://get.videolan.org/vlc/2.1.3/win32/vlc-2.1.3-win32.exe
挂载nfs也可以直接使用securtCRT进行挂载,挂载步骤
1 烧写完文件系统和内核以后,用ifconfig eth0 进行设置板子的ip地址
2 设置以后用ping检查能否ping通板子
3 ping通以后使用mount命令进行挂载
4 用 cd /mnt 转到挂载目录下 用ls查看当年文件夹下的内容。如果内容和被挂载的文件一样,则挂载成功。
在ubuntu下可以使用minicom进行挂载。
(1)有些linux系统自带了minicom,直接用命令安装就行了: apt-get install minicom; 也可以从以下地址下载安装:
http://alioth.debian.org/projects/minicom/ (2)安装完成后:
用指令\来确认是否安装了minicom,回车后会显示minicom的版本信息. 第一次启动时:
即输入minicom提示错误。则需:minicom -s 启动
出现配置菜单:选serial port setup 进入串口配置
输入A配置串口驱动为/dev/ttyS0(如果使用USB转接口,Serial Device要配置为/dev/ttyUSB0) 输入E配置速率为115200 8N1
输入F将 Hardware Flow Control 设为 NO 回车退出
由于我们使用minicom作为超级终端控制路由器等设备, 而不是控制modem, 所以需要修改Modem and dialing, 将Init string, Reset string, Hang-up string设置为空. 设置完成后选择Save setup as dfl将当前设置保存为默认设置.(若保存时出错,可能是因为权限不够,用root身份配置minicom则可)
在配置菜单选Save setup as df1保存(一定要记得这一步) 选Exit退出
下次在输入minicon即可直接进入。
命令minicom是进入串口超级终端画面,而minicom -s为配置minicom。 说明/dev/ttyS0 对应为串口0 为你连接开发板的端口。
注意:非正常关闭minicom,会在/var/lock下创建几个文件LCK*,这几个文件阻止了minicom的运行,将它们删除后即可恢复
挂载NFS文件系统:
1、在你的PC机上安装NFS服务
执行sudo apt-get install nfs-kernel-server 查看nfs端口是否打开: netstat -tl
可以看出nfs和sunrpc端口已经处于监听状态。 启动和停止nfs命令如下:
sudo /etc/init.d/nfs-kernel-server start(stop/restart)
接下来对nfs服务器进行配置:
打开/etc/exports文件,在末尾加入:
/zhang/hi3518/nfs *(rw,sync,no_root_squash)
注:nfs允许挂载的目录及权限,在文件/etc/exports中进行定义,各字段含义如下:
/home/kevin:要共享的目录 * :允许所有的网段访问 rw:读写权限
sync:资料同步写入内在和硬盘
no_root_squash:nfs客户端共享目录使用者权限 重启服务:
#sudo /etc/init.d/portmap restart<---重启portmap,
#sudo /etc/init.d/nfs-kernel-server restart<---重启nfs服务 #showmount -e<---显示共享出的目录
注:nfs是一个RPC程序,使用它前,需要映射好端口,通过portmap设定
命令执行情况如下:
kevin@ubuntu:~$sudo /etc/init.d/portmap restart
现在可以在本机上试一下:
挂载之前切记要打开minicom,然后在minicom里面进行挂载,我在做的前提一直在ubuntu下挂载,请教大神的时候被人嘲讽了! #mount -t nfslocalhost:/home/kevin /mnt 注:localhost为本机linux的IP地址
总结:挂载nfs大同小异,相同的是只需要使用串口工具就可以进行挂载,不同的是win 7下可以使用telnet 和securtCRT挂载,ubuntu下可以使用minicom挂载。
正在阅读:
静电引事故案例03-13
水作文之水电站设计开题报告03-02
维护验收报告06-22
初中生考幼师面试自我介绍02-24
5.12护士节国旗下讲话稿范文精选5篇04-04
2018年湖北省鄂州市梁子湖区中考数学模拟试卷(5月份)-普通用卷05-03
名词解释--公共政策01-25
针阔叶浆品牌及英文02-28
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 挂载
- 内核
- 以及
- 文件
- Hi3518
- 系统
- nfs
- 对新经济政策的不同诠释及其命运
- 江苏13市中考物理试题汇编 - 光现象 - 图文
- 全站仪试卷
- 数学压轴训练(三)
- 小学品德与生活苏教中图版二年级上《16让校园更美好》省级名师优质课教案比赛获奖教案示范课教案公开课教案
- 学校传染病疫情应急处理预案
- 陕西省汉中市陕飞二中八年级语文 2.6 知能优化演练 人教新课标版
- 山东省滨州市邹平实验中学八年级历史下册《建设社会主义道路的探索》备课资料2素材 岳麓版 精品
- 我国工程设计阶段和国际通行设计阶段划分浅析
- 《学前儿童社会教育基础》专科 试题库及答案
- 2012高中历史 第6课《殖民扩张与世界市场的拓展》教案2 新人教版必修2
- 化学动力学练习题
- 西南大学《思想政治教育学》网上作业及参考答案
- 浅谈妇女干部的领导力培养 doc(科学领导方法论论文)
- I2C和SPI - 图文
- 《劝学》练习卷含答案
- 可逆电池的电动势及其应用的分章练习题
- 最新 教科版六年级科学上册:第二单元形状与结构
- (重要)本科毕业设计(论文)说明书模板
- 学练优春九年级语文下册第一单元1窃读记学案无答案鄂教版0104288 - 图文