将 Hi3519V101_SDK_Vx.x.x.x.tgz 压缩包放入共享文件夹中,并解压到Linux内部如 /sdk 目录下,由于在共享目录中编译容易出现各类错误。 tar -zxf Hi3519V101_SDK_Vx.x.x.x.tgz -C /sdk
html
在/sdk 获得一个Hi3519V101_SDK_Vx.x.x.x目录,运行这个目录中的sudo ./sdk.unpack
脚本,将会展开SDK包打包压缩存放的内容。 若没法运行sdk.unpack,须要按下面方法修改脚本,由于SDK中不少sh文件,逐个修改很麻烦,用第二种方式修改系统,一劳永逸。linux
方法一 1) 将 vim scripts/common.sh
第一行#!/bin/sh 改成 #!/bin/bash 2) 将 vim sdk.unpack
第一行 #!/bin/sh 也改成 #!/bin/bash 方法二 1) sudo dpkg-reconfigure dash
而后选择 novim
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
, 使安装交叉编译器脚本配置的环境变量生效。windows
配置方法见另外一篇博客,也可在windows下用tftpd32操做,将package/image_big-little/image_uclibc_big-little(或image_glibc_xxx)下的相关文件 cp *hi3519v*
拷贝到tftp服务器目录下。bash
单板上电后,长按回车键进入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
,确保网络畅通。网络
1) 地址空间说明tcp
| 1M | 3M | 12M | |---------------|---------------|---------------| | boot | kernel | rootfs |
如下的操做均基于图示的地址空间分配,您也能够根据实际状况进行调整。spa
2) 烧写u-bootcode
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
。
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
。
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一下其余机器,如无心外,网络将能正常工做。
NFS服务器搭建和挂载方式见另外一篇博客。 挂载NFS文件系统的操做命令:
mount -t nfs -o nolock -o tcp -o rsize=32768,wsize=32768 10.82.16.233:/tftp /mnt/
要使用telnet登陆到单板,需运行命令 telnetd &
启动单板telnet服务,加入到 /etc/profile 文件可开机自运行。