Hi3519v101 SDK安装及升级

一、安装SDK

1、解压tgz压缩包

将 Hi3519V101_SDK_Vx.x.x.x.tgz 压缩包放入共享文件夹中,并解压到Linux内部如 /sdk 目录下,因为在共享目录中编译容易出现各种错误。
tar -zxf Hi3519V101_SDK_Vx.x.x.x.tgz -C /sdk

2、展开SDk

在/sdk 得到一个Hi3519V101_SDK_Vx.x.x.x目录,运行这个目录中的sudo ./sdk.unpack 脚本,将会展开SDK包打包压缩存放的内容。
若无法运行sdk.unpack,需要按下面方法修改脚本,因为SDK中很多sh文件,逐个修改很麻烦,用第二种方式修改系统,一劳永逸。

方法一
1) 将 vim scripts/common.sh  第一行#!/bin/sh 改为 #!/bin/bash
2) 将 vim sdk.unpack 第一行 #!/bin/sh 也改为 #!/bin/bash
方法二
1) sudo dpkg-reconfigure dash 然后选择 no

3、在linux上安装交叉编译器

1) 安装uclibc交叉编译器:
进入osdrv/opensource/toolchain/arm-hisiv500-linux目录,执行sudo ./arm-hisiv500-linux.install 即可。
2) 安装glibc交叉编译器:
进入osdrv/opensource/toolchain/arm-hisiv600-linux目录,执行sudo ./arm-hisiv600-linux.install 即可。
3) 执行 source /etc/profile, 使安装交叉编译器脚本配置的环境变量生效。

二、安装、升级Hi3519V101 DEMO板开发环境(已经有uboot)

1、为Linux配置tftp服务器

配置方法见另一篇博客,也可在windows下用tftpd32操作,将package/image_big-little/image_uclibc_big-little(或image_glibc_xxx)下的相关文件 cp *hi3519v*拷贝到tftp服务器目录下。

2、参数配置

单板上电后,长按回车键进入u-boot。
设置tftp服务器IP,单板IP,单板MAC地址,掩码及网关。

setenv serverip 10.82.16.231
setenv ipaddr 10.82.16.232
setenv ethaddr C2:3A:00:B3:5B:31
setenv netmask 255.255.255.0
setenv gatewayip 10.82.16.1

设置好后 ping serverip,确保网络畅通。

3、烧写映像文件到SPI Flash,以16M SPI Flash为例。

1) 地址空间说明

        |      1M       |      3M       |      12M     |
        |---------------|---------------|---------------|
        |     boot      |     kernel   |     rootfs    |

以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。

2) 烧写u-boot

mw.b 82000000 ff 100000
tftp 0x82000000 u-boot-hi3519v101.bin
sf probe 0
sf erase 0 100000
sf write 82000000 0 100000  
reset

请注意,reset之后需要重新设置网络参数。

3) 烧写内核

mw.b 82000000 ff 300000
tftp 82000000 uImage_hi3519v101
sf probe 0
sf erase 100000 300000
sf write 82000000 100000 300000

4) 烧写文件系统

mw.b 82000000 ff C00000
tftp 0x82000000 rootfs_hi3519v101_64k.jffs2
sf probe 0
sf erase 400000 C00000
sf write 82000000 400000 C00000

5) 设置启动参数(注意linux-3.18.y kernel默认文件系统只读,需要在bootargs中加入rw选项,文件系统才可读写)

setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 rw mtdparts=hi_sfc:1M(boot),3M(kernel),12M(rootfs)'
setenv bootcmd 'sf probe 0;sf read 0x82000000 0x100000 0x300000;bootm 0x82000000'
sa

6) 重启系统 reset

4、烧写映像文件到NAND Flash,以64M NAND Flash为例。

1) 地址空间说明

|      1M       |     3M        |     32M       |         28M            |
|---------------|---------------|---------------|------------------------|
|     boot      |    kernel     |    rootfs     |        other           |

以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。
2) 烧写u-boot

mw.b 82000000 ff 100000
tftp 82000000 u-boot-hi3519v101.bin
nand erase 0 100000
nand write 82000000 0 100000
reset

reset之后需要重新设置网络参数。

3) 烧写内核

mw.b 82000000 ff 300000
tftp 82000000 uImage_hi3519v101 
nand erase 100000 300000
nand write 82000000 100000 300000

4) 烧写文件系统

mw.b 82000000 ff 2000000
tftp 82000000 rootfs_hi3519v101_2k_4bit.yaffs2
nand erase 400000 2000000
nand write.yaffs 82000000 400000  96d200    #注意:96d200为rootfs文件实际大小(16进制)

5) 设置启动参数

setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 rw mtdparts=hinand:1M(boot),3M(kernel),32M(rootfs),28M(test)'
setenv bootcmd 'nand read 0x82000000 0x100000 0x300000;bootm 0x82000000'
sa

6) 重启系统 reset

三、使用SDK和DEMO板进行开发

1、开启Linux下的网络,可添加到 /etc/profile

ifconfig eth0 hw ether C2:3A:00:B3:5B:31
ifconfig eth0 10.82.16.232 netmask 255.255.255.0
route add default gw 10.82.16.1

然后ping一下其他机器,如无意外,网络将能正常工作。

2、使用NFS文件系统进行开发

NFS服务器搭建和挂载方式见另一篇博客。
挂载NFS文件系统的操作命令:

mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 10.82.16.233:/tftp  /mnt/

3、开启telnet服务

要使用telnet登录到单板,需运行命令 telnetd & 启动单板telnet服务,加入到 /etc/profile 文件可开机自运行。

----------END----------

猜你喜欢

转载自www.cnblogs.com/misfit/p/10559525.html
今日推荐