Hi3516EV200 Linux SDK环境搭建

一、操作环境

PC:win10

虚拟机:Ubuntu14.04 LTS 64bit

板端:DOPI 3516EV200 (Hi3516EV200)NAND 128MB

需要Linux SDK(Hi3516EV200_SDK_V1.0.1.0.tgz)、以及海思的开发文档。

sdk的解压过程以及展开大致跟LiteOs一致,这里不再赘述,相关的链接:点我进入传送门

二、下载第三方开源包

按照以上的教程对了Linux的SDK进行解压,以及将交叉编译链的脚本写好,然后就开始下载第三方的资源包,主要是kernel以及SDK/osdrv/tools/pc下一些没有的工具包。对于Linux kernel,在sdk/osdrv\opensource\kernel/readme_cn.txt有具体下载内核的方式,要是下不下来的话可以下面评论私聊我,下载好的压缩包放在对应的目录下便可。对于资源包,也是将压缩包放在对应的目录下便可,由于要用到的文件系统格式是yaffs,所以这里以yaffs为例,在sdk/osdrv/tools/pc/mkyaffs2image目录下有个readme.txt,里面告诉我们下载的路径:https://github.com/dorigom/yaffs2utils/releases,将其下载然后放在mkyaffs2image目录下便可,其余pc目录下的工具也是如此,无需解压。

三、编译

编写一个脚本,这个脚本跟liteos一致,用于编译uboot、kernel和rootfs。脚本参考:点我。写好执行。

四、烧录

编译完成后在sdk/osdrv/pub下会生成一个文件夹:hi3516ev200_spi_image_uclibc,里面有好多类型的文件系统,以及uboot和linux内核镜像。文件系统选择的是:rootfs_hi3516ev200_2k_4bit.yaffs2。下载的配置如下:

 五、设置uboot启动变量

在烧录完毕后板子会直接进入uboot,由于没有配置启动参数会停留在终端,比如设置终端以及文件系统在那个区域、文件系统的类型,uboot、kernel、rootfs在存储介质的区域范围,还有从哪里引导内核,读取到内存的那个位置,然后跳转kernel。



setenv bootargs 'mem=40M console=tty0 console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 rw mtdparts=hinand:1024K(boot),4096K(kernel),30720K(rootfs) '
setenv bootcmd 'nand read 0x42000000 0x100000 0x400000; bootm 0x42000000'
saveenv

存储介质是nand,所以使用的是yaffs文件系统,后面各个区域的位置需要参考烧录的位置做好相应的更改,然后与liteos的区别在与 linux读取到内存的位置是0x42000000 ,而liteos是 0x40000000,这个有在官方文档说明。在终端设置环境变量后,打印:

然后reset重新启动。如果选择的文件系统正确,不出意外如下打印:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值